3

所以我不确定为什么我的代码不起作用,但这是我得到的错误:

Warning: simplexml_load_file() [function.simplexml-load-file]: I/O warning : failed to load external entity "../../setting.xml" in /home1/sk8ermid/public_html/MVP/themes/SDS-2013/home.php on line 3

这是我使用的代码:

<?php 

$settings = simplexml_load_file('../../setting.xml');
$site_title = $settings->title;

?>

我正在尝试进入“settings.xml”文件所在的两个目录。我这样做是正确的方式还是有其他方法可以做到这一点?

4

1 回答 1

3

尝试这个

$settings = simplexml_load_file(__DIR__ . '/../../setting.xml');

始终牢记.(CWD)是任何include/require树根目录下的 PHP 脚本目录,并且只有在您配置的include_path实际包含.(尽管可以在代码中更改)时才这样做。

如果您的home.php脚本包含在不同目录中的另一个脚本中,.则相对于该其他脚本。

使用__DIR__确保您始终从当前脚本的父目录开始。

http://php.net/manual/language.constants.predefined.php

于 2013-11-15T02:29:30.420 回答