我得到的zip文件下面的代碼沒有任何錯誤下載,但下載的zip文件是空的或損壞的,大小總是大約200字節。 即我無法打開該zip文件。 也ZipArchive :: getStatusString()也呈現出 「沒有錯誤」通過ZipArchive獲取損壞的或空的zip php
代碼:
public function getzip(){
global $config;
$files=array();
if(isset($_COOKIE['hashes'])){
$hashes=explode(',',$_COOKIE['hashes']);
for ($i=0; $i <count($hashes); $i++) {
array_push($files,$config["domain"]."/download/".$hashes[$i]);
}
}
if(count($files)){
$zipname='basket.zip';
$zip = new ZipArchive;
$zip->open($zipname,ZipArchive::CREATE);
foreach ($files as $key=>$value) {
$zip->addFile($value);
}
$status=$zip->getStatusString();
$zip->close();
if(!$zipname)
{
echo "Nothing in Basket";
}
else
{ header('Content-Description: File Transfer');
header('Content-Type: application/zip');
header('Content-Disposition:attachment; filename='.basename($zipname));
header('Content-Length:'.filesize($zipname));
readfile($zipname);
}
}
它給我的錯誤。這意味着$ zipname目錄不會被創建。 但m沒有得到味精的「籃子裏沒有東西」,而是得到一個zip文件下載。 – 2013-02-09 22:23:46