如何为不同文件夹中的项目使用require_once标头?

时间:2011-09-22 23:53:53

标签: php header require-once

我对我网站的所有页面使用require_once("header.php");。虽然,我觉得我只能将该代码用于直接归档在public_html文件夹下的文件。如果我将require_once("header.php");代码用于public_html下目录中的任何其他文件(例如衬衫),这样你就有了public_html / shirts / example.php,那么header.php不会加载图片,链接,或任何其他页面正确。

我知道要在短期内解决这个问题,我可以为该目录创建一个新的标题,并将../添加到所有代码中,但我认为这是一种更简单的方法。有谁知道我可以改变header.php的代码,所以我不必单独生成标题?

感谢。

1 个答案:

答案 0 :(得分:0)

您可以添加到include_path

添加header.php所在的当前目录,或者在您的站点中创建名为includes some的文件夹,并将其添加到包含路径。

你可以更新php.ini中的include_path(最简单),也可以这样编程:

set_include_path(implode(PATH_SEPARATOR, array(
    '/path/to/your/includes',
    get_include_path(),
)));

编程方法效果很好,但除非您的大多数文件都是通过通用脚本(即前端控制器模式)提供的,否则您需要将该代码复制到所有不理想的文件中。有时您也可以使用.htaccess设置include_path,但前提是PHP是Apache模块。

只要你的结构是相当静态的,使用../或者包含没有任何问题。