今天,我想創建一些PHP腳本,它將直接強制下載mp3文件。無法通過php腳本訪問文件
文件我想下載放入聲音文件夾中,我可以通過http://playall.pl/sounds/ThemadpixprojectBadChick.mp3
訪問,但是當它涉及到PHP腳本 - 函數file_exists說,這個文件是不是此服務器上。
我該如何解決?使用它來下載文件
if (file_exists($file)) {
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file_name));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
exit;
而獲得的文件名和文件的URL
$file_name = ''.$sound['Sounds']['artist'].' - '.$sound['Sounds']['title'].'.mp3';
$file_name = preg_replace('/\s+/', '_', $file_name);
$file = 'http://playall.pl'.$this->webroot.'sounds/'.$sound['Sounds']['src_url'];
爲什麼你不重定向瀏覽器? – 2014-09-25 23:25:51
因爲我想強制按鈕單擊下載此文件。 – GamaPL 2014-09-25 23:28:38
並添加,即時通訊使用CakePHP框架。 – GamaPL 2014-09-25 23:29:09