2012-06-13 55 views
1

我寫了一個PHP應用程序(工作),我已經將它移動到不同的目錄。因此,它需要得到它上面的目錄中的文件,但該文件必須保持隱藏,即:PHP XML獲取錯誤

  • --config
  • --- 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請求)。

我能做些什麼來解決這個問題? (感謝您的幫助)

+0

嘗試0644的權限 –

+0

沒有工作。我已經嘗試了777,這也不起作用。 – user1453967

+0

你確定你移動了CALLED文件(例如index.php),而不僅僅是包含的類等? – Sliq

回答

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; 
}