2015-05-22 85 views
1

如何将HTML和一些PHP代码附加到指定文件。 基本上我有一个菜单/导航和恼人的不得不经常编辑每个文件添加一个新的选项卡等导航是响应,所以我不能只是嵌入它,我wouldnt做无论如何。我需要它做例如包括(),但我有一个menu.html文件试图做我的index.php文件<?php include 'http://www.example.com/menu.html'; ?>它应该显示菜单,但它显示。追加HTML和PHP代码

我也试过Include(menu.html);但是这不会作为我的index.php工作,其中im试图包含()菜单在与菜单不同的目录中。

有什么办法可以基本上将HTML导入一堆页面?如果可能的话,当它导入到页面时,只要我编辑menu.html,所有的页面应该有完全相同的HTML菜单。还应该只有一个menu.html,这是我做这件事的主要原因,所以我减轻了文件空间,并减少了编辑菜单的时间。

+1

可以包括文件的地方,但你需要使用一个'absolute'你的服务器上的路径'/ home/website/menu.html'不是'http://' – cmorrissey

+0

使用'../ path_to_menu/menu.html'。 '../'will将用于移动到您的文件当前存在的父目录 –

+0

您是指/public_html/menu.html然后cmorrissey? –

回答

1

如果你改变menu.html是menu.php,定义你的HTML菜单功能?

例如

在menu.php

function menu(){ 
    echo "<div>Your menu code in here</div>"; 
} 

在index.php文件

include("menu.php"); 
//here where you place your menu 
menu(); 
+0

你知道你可以“包含”任何文件,对吧?不一定是PHP。 –

+0

你甚至可以在你的'menu.php'文件中使用纯HTML,然后像往常一样包含它。无需执行函数并通过回显字符串来打印菜单。 –

+0

dis works但是当我把20行+菜单的代码它滞后页面这么多,并加载几乎没有 –

0

基本上,include()require()应该用来做到这一点。

但是,您需要了解这些功能,但它们包含文件系统中的文件而不是URL。

所以您的使用情况基本上应该像include('/path/to/file.html');

这些功能基本上都使用,随处可见,当你想扩展您的应用程序,并拥有像函数和类的代码可重用块。

这两种功能的另一种变体是include_once()require_once如果您尝试再次包含该文件,该文件只包含一次文件。

0

这将是有益的,你对PHP模板读了,这样的事情应该帮助您开始:http://www.phpro.org/tutorials/Introduction-to-PHP-templating.html

+0

仅链接的答案一般是不好的,但是这一个......我不确定我看到这里的相关性。 –

+0

OP显然是PHP模板的新手。我不能在SO回答中写出整个指南。有时候人们需要阅读一份体面的教程/手册,而不是在那里和任何地方收集一点点信息。 – diggersworld

0

虽然 “正确” 的方式来做到这一点是指定include_path,我个人的喜好是启动我的初始化脚本:

chdir($_SERVER['DOCUMENT_ROOT']); 

这意味着我现在可以调用includerequire - 或者真正的任何文件操作 - 并指定一个从站点根目录开始的路径,而不用担心在执行操作时我是否已经在子文件夹中。

根据代码的组织结构,您可能需要不同的基准路径。

-1

看来你需要添加菜单/导航文件到页面。我确实有一些解决方案如下。

  1. 首先,您需要创建.php文件并在其中包含html代码。其次,如果您使用任何框架或cms,请将其包含在标题中。
  2. 最后,如果你正在使用PHP核心然后按照步骤1

另外,如果你想在不同的页面不同的菜单,那么你需要用一些检查,处理它

1

我会建议使用file_get_contents。 如下使用它:

 $menu = file_get_contents(path/to/menu.html); 

,然后echo $menu;在u需要在页面在这种情况下要加载的index.php

+0

'readfile'和'include'都比'echo file_get_contents'更好 - 尤其是如果包含的文件非常大。 –

+0

file_get_contents支持文件的url,例如,为什么我会因为OP在问题中使用url而发生故障 – Pushkar