0

我有一个名为list.xml我网站根目录的 XML 文件。我想通过simplexml_load_file()我网站的每个页面加载它。

我在模板文件中尝试了以下代码:

if ($level == 1) {
    $xml = simplexml_load_file('list.xml');
} else {
    $xml = simplexml_load_file('../list.xml');
}

变量 $level = 1 在根级别的页面上设置。在其余的页面上,都是一层深度,$level 没有设置,相对路径'../list.xml' 应该用于这些页面。

当我访问根级页面时,该站点正确加载,但一级深度的页面返回错误:

PHP 警告:simplexml_load_file():I/O 警告:未能加载外部实体“list.xml”

我已经确保相对路径是正确的。我尝试了上述代码的其他组合,但我不知道出了什么问题。它起作用的唯一方法是在每个网页中手动设置路径。但是那样的话,维护起来会很困难。

谢谢你的帮助!!

4

1 回答 1

2

而不是尝试根据输入文件自定义脚本,您可以编写一行,无论您的脚本在 Web 树中的哪个位置都可以工作:

$xml = simplexml_load_file($_SERVER['DOCUMENT_ROOT'] . '/list.xml');
于 2012-04-23T17:37:15.627 回答