1

require_once("header.php");用于我网站的所有页面。不过,我觉得我只能将该代码用于直接在 public_html 文件夹下提交的文件。如果我将require_once("header.php");代码用于位于 public_html 下的目录(例如衬衫)中的任何其他文件,例如您有 public_html/shirts/example.php,header.php 不会正确加载图像、链接或任何其他页面.

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

谢谢。

4

1 回答 1

0

您可以添加到您的include_path

要么添加 header.php 所在的当前目录,要么在站点的某处创建一个名为 include 的文件夹并将其添加到包含路径中。

您可以更新 php.ini 中的 include_path(最简单),也可以像这样以编程方式进行:

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

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

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

于 2011-09-23T00:00:05.900 回答