《PHP編程:PHP在線打包下載功能示例》要點:
本文介紹了PHP編程:PHP在線打包下載功能示例,希望對您有用。如果有疑問,可以聯系我們。
PHP實例本文實例講述了PHP在線打包下載功能實現方法.分享給大家供大家參考,具體如下:
PHP實例昨天晚上,為了弄這個打包下載的事,弄的事焦頭爛額.有幾個問題,第一個是開始PHP_ZIP.dll的問題.話說只要把PHP.INI里面的extend_dir里面的前的”;”號去掉.再重啟IIS或者apache就可以了.
PHP實例問題是老是找不到系統配置的真正的PHP.INI.
PHP實例
PHP實例PHP配置圖
PHP實例第二個是告訴你配置文檔的路徑,按著找就可以了.我當時腦袋秀逗了,浪費了很多時間.
PHP實例這個開啟PHP_ZIP擴展庫以后,就可以開始打包下載了.
PHP實例
$filename= date("YmdHis");
$zip = new ZipArchive();//使用本類,linux需開啟zlib,windows需取消php_zip.dll前的注釋
$zip->open($filename.".zip", ZipArchive::OVERWRITE); //$data 就是從數據庫里面讀出的數字
foreach( $data as $val){
$attachfile = "E:\bysj\bysj".$val['fileaddr'].$val['filename']; //寫硬路徑,但建議用PHP環境變量
$attachfile=iconv("UTF-8","GBK",$attachfile); //轉碼,是打包中文文檔的關鍵
$zip->addFile( $attachfile , basename($attachfile)); //壓棧
}
$zip->close();//關閉
header("Content-type:text/html;charset=utf-8");//設置頁面編號
header("Cache-Control: public");
header("Content-Description: File Transfer");
header('Content-disposition: attachment; filename='.basename($filename)); //文件名
header("Content-Type: application/zip"); //zip格式的
header("Content-Transfer-Encoding: binary"); //告訴瀏覽器,這是二進制文件
header('Content-Length: '. filesize($filename)); //告訴瀏覽器,文件大小
@readfile($filename.".zip");
PHP實例上面的代碼基本就可以實現文檔打包下載了,也解決了中文文檔無法打包下載的問題.
PHP實例更多關于PHP相關內容感興趣的讀者可查看本站專題:《php文件操作總結》、《PHP數組(Array)操作技巧大全》、《PHP基本語法入門教程》、《PHP運算與運算符用法總結》、《php面向對象程序設計入門教程》、《PHP網絡編程技巧總結》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》
PHP實例希望本文所述對大家PHP程序設計有所幫助.
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/3042.html