爲什麼PHP的zip_read()返回false?我之前使用過這個腳本,它返回true。爲什麼PHP的zip_read()返回false?
$zip = zip_open("/tmp/ayb/test.zip");
if(is_resource($zip))
{
$zip_read=zip_read($zip);
echo($zip_read?'true':'false');
}
爲什麼PHP的zip_read()返回false?我之前使用過這個腳本,它返回true。爲什麼PHP的zip_read()返回false?
$zip = zip_open("/tmp/ayb/test.zip");
if(is_resource($zip))
{
$zip_read=zip_read($zip);
echo($zip_read?'true':'false');
}
腳本不會奇蹟般地顛倒他們的行爲無緣無故。你改變了一些。你做錯了什麼。不要責怪腳本。 ZIP被損壞,或者它是一個不同的ZIP,或者它不再存在。
的relevant manual page告訴我們:
返回用於與
zip_entry_
...功能,或FALSE以後使用目錄項的資源,如果沒有更多的條目讀,或錯誤代碼如果發生錯誤。
請注意,這意味着您應該測試$zip_read
超過基本的真實性。您應該仔細檢查它的確切值,並從那裏進行調試。
嘗試壓縮zip檔案與正常的激情。並檢查是郵編有密碼或不。然後轉儲值:
var_dump($zip_read);
zip文件爲空。
這是正確的答案。
'zip_open()'顯示它在那裏。有關何處解決問題的任何建議? – user1032531
@ user1032531:在WinZip中打開它。你看到了什麼?自你上次運行腳本後,你發生了什麼變化?我們沒有足夠的信息來告訴你爲什麼這個腳本魔法顛倒了它的行爲。您尚未提供複製步驟。 –
+1。我認爲你是正確的,因爲它是一個損壞的zip。抱歉虛驚一場,「責備」劇本。我將繼續研究併發布任何調查結果。 – user1032531