0
我使用PHP創建csvs文件,將它們放入一個文件夾,然後壓縮文件夾。這一切都完美的作品,但我不能然後得到用戶創建自動下載的ZIP。單擊鏈接後自動下載CSV文件
編輯
現在取出後重定向的工作原理,但它缺乏.zip擴展名是下載的時候,有沒有辦法迫使這一點?
我的拉鍊都存儲在/拉鍊根
這裏是我的代碼
// Add the folder we just created to a zip file.
$zip_name = 'groups_' . time();
$zip_directory = '/zips';
$zip = new zip($zip_name, $zip_directory);
$zip->add_directory('group-csvs');
$zip->save();
$zip_path = $zip->get_zip_path();
header("Content-Description: File Transfer");
header("Content-type: application/zip");
header("Content-Disposition: attachment; filename=" . $zip_name . "");
header("Content-Length: " . filesize($zip_path));
readfile($zip_path);
這裏是我的zip類的Get路徑方法和構造
public function __construct($file_name, $zip_directory)
{
$this->zip = new ZipArchive();
$this->path = dirname(__FILE__) . $zip_directory . $file_name . '.zip';
$this->zip->open($this->path, ZipArchive::CREATE);
}
/**
* Get the absolute path to the zip file
* @return string
*/
public function get_zip_path()
{
return $this->path;
}
我不沒有任何錯誤,它只是創建zip然後沒有任何反應
你的''zip-> save()'調用原始'ZipArchive'類的'close()'嗎? –
是公共功能保存() { $ this-> zip-> close(); } – pocockn