0
我正在使用WordPress作爲網站,並且希望包含一個菜單項以從網站將壓縮文件下載到本地驅動器。我嘗試使用以下功能:使用PHP和WordPress下載zip文件到本地驅動器
function download_binary_file($file) {
if (file_exists($file)) {
$base_name = basename($file);
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="'.$base_name.'"');
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
exit;
}
}
但執行此功能時,而不是讓一個對話框,保存文件,壓縮文件的內容顯示在我的瀏覽器。有任何想法嗎?
以什麼方式顯示? – 2013-02-26 18:11:04
如果刪除'ob_clean();'和'ob_flush()',會發生什麼情況?你確定在header()之前沒有輸出嗎? +您是否嘗試過其他瀏覽器? – 2013-02-26 18:12:58
大部分是非ASCII字符。本質上,該文件被轉儲到瀏覽器窗口中。 – EastsideDeveloper 2013-02-26 18:14:45