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」ファイルがある 2 つのディレクトリに移動しようとしています。私はこれを正しい方法で行っていますか、それとも別の方法がありますか?

4

1 に答える 1

3

これを試して

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

(CWD) は/ツリー.のルートにある PHP スクリプトのディレクトリであり、構成されている場合にのみ、実際に含まれていることを常に覚えておいてください(これはコードで変更できますが、デフォルトで行われます)。includerequireinclude_path.

home.phpスクリプトが別のスクリプトによって別のディレクトリに含まれている場合は.、その別のスクリプトに相対的です。

を使用__DIR__すると、常に現在のスクリプトの親ディレクトリから開始するようになります。

http://php.net/manual/language.constants.predefined.phpを参照してください。

于 2013-11-15T02:29:30.420 に答える