이 기사의 예에서는 PHP 온라인 패키지 다운로드 기능을 구현하는 방법을 설명합니다. 자세한 내용은 다음과 같습니다.
어젯밤에는 패키징과 다운로드 작업을 하느라 너무 바빴습니다. 여러 가지 문제가 있는데, 첫 번째는 PHP_ZIP.dll을 시작하는 문제입니다. 즉, PHP.INI에서 extend_dir 앞에 있는 ";" 기호를 제거하면 됩니다. IIS나 아파치를 다시 시작하세요.
문제는 시스템에서 구성한 실제 PHP.INI를 찾을 수 없다는 것입니다.
PHP 구성 다이어그램
두 번째는 구성 문서의 경로를 알려주는데, 클릭해서 찾으시면 됩니다. 머리가 어지러워서 시간을 많이 낭비했습니다.
PHP_ZIP 확장 라이브러리를 연 후 패키징 및 다운로드를 시작할 수 있습니다.
$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 중국어 웹사이트를 주목하세요!