0

我想我发现当我有一个 errordocument 自定义错误页面时,include 并不总是有效,因为 include 需要一个目录并且有错误的页面可能在不同的目录中。

directory1/directory2/thispagecausesa404error.php

directory1/thispagecausesa404error.php

如果我include includepage.php;的错误文档页面中有,那么它将不起作用。

我决定添加include_once $_SERVER['DOCUMENT_ROOT'].'/includepage.php';到错误文档页面,这解决了问题,但我怀疑我做错了什么,或者没有看到正确的方法来在错误页面上完美包含。

我究竟做错了什么?

4

1 回答 1

0

我建议永远不要依赖DOCUMENT_ROOT正确设置。相反,通过__DIR__魔法常数使用当前脚本的相对路径,例如

include __DIR__ . '/relative/path/from/this/script/to/includepage.php';

如果需要,路径还可以包含父目录遍历../,例如

include __DIR__ . '/../../some/dir/includepage.php';
于 2013-11-08T01:40:57.143 回答