2009-08-22 124 views
4

由於一些奇怪的原因,我現在無法弄清楚,NoEmbed.php在嘗試包含文件時失敗並出現致命錯誤。包括路徑設置是否正確,我已經驗證,像下方(NoEmbed.php放在require_once指令前右):PHP致命錯誤:require_once():無法打開所需的'Zend/Gdata/Extension.php'

$s = ini_get('include_path'); 
$a = explode(':',$s); 
foreach($a AS $path) { 
    echo $path; 
    if(file_exists($path.'/Zend/Gdata/Extension.php')) echo '...found<br/>'; 
    else echo '...not found<br/>'; 
} 

,輸出「發現」預期的位置中。

我必須承認,我目前無法想出爲什麼會發生這種情況,尤其是因爲NoEmbed.php包含正確。我遇到了與緩存解決方案類似的問題,但是現在它們都已停用或卸載,沒有任何區別。

編輯:我只是發現它適用於「require」與「require_once」(然後拋出一個redeclare錯誤)......任何可能的原因呢?

回答

0

檢查文件夾的權限和所有者,以及文件的兩個文件。

例如dir可能是755和文件644,如果要寫入它們,則以www-data作爲所有者。

+0

權限沒問題。看我的編輯 - 它適用於包括。我現在發現,「clearstatcache()」在99%左右的時間內解決了這個問題,但即便如此,仍然存在着同樣的致命錯誤。我很確定我忽略了一些東西...... – Flim 2009-08-22 22:48:12

0

在我的情況下,問題是硬盤故障。我可以通過終端看到該文件及其內容,但PHP在60%的點擊中給了我這個特定的文件未找到錯誤。

我已將它移動到另一個硬盤驅動器,錯誤消失。

相關問題