1

我编写了一个 PHP 应用程序(有效),并将其移至不同的目录。因此它需要从它上面的目录中获取一个文件,但该文件必须保持隐藏状态,即:

  • --配置
  • ---users.xml(权限 600)
  • --lib
  • ----loginUtil.php

我尝试了两种不同的获取文件的方法:

    $xml = file_get_contents("../config/users.xml");

 Which returns the following Error:

   [13-Jun-2012 08:54:04] PHP Warning:  file_get_contents(../config/users.xml) [<a href='function.file-get-contents'>function.file-get-contents</a>]: failed to open stream: No such file or directory in public_html/test/lib/loginUtil.php on line 18

    $xml = simplexml_load_file("../config/users.xml");

  which returns

    [13-Jun-2012 08:56:17] PHP Warning:  simplexml_load_file() [<a href='function.simplexml-load-file'>function.simplexml-load-file</a>]: I/O warning : failed to load external entity 

我已经尝试使用完整的 URL,这很有效,但是我必须公开 users.xml 文件(因为 PHP 正在执行 URL 请求)。

我可以做些什么来解决这个问题?(谢谢你的帮助)

4

1 回答 1

1

尝试设置完整路径而不是相对路径

$path = '/var/full/path_dir/file.xml';

if(!is_file($path)){

  // if this is the is output then you need to check permissions 
  // double check the file exists also.
  // check the web service can read the file
  echo "FILE NOT FOUND FOR $path";
}
else{
  $xml = file_get_contents($path);
  echo $xml;
}
于 2012-06-13T15:38:24.887 回答