PHP ZipArchive는 PHP와 함께 제공되는 확장 클래스로, ZIP 파일을 쉽게 압축 및 압축 해제할 수 있습니다. 사용하기 전에 먼저 PHP ZIP 확장 기능이 켜져 있는지 확인해야 합니다. 구체적인 전환 방법은 언급되지 않습니다. 다양한 플랫폼에서 PHP 확장이 가능합니다. 궁금한 점이 있으면 언제든지 공유해 주세요. 다음은 참조용으로 파일을 압축 및 압축 해제하기 위해 php zipArchive를 사용하는 몇 가지 일반적인 예입니다.
1. zip 파일의 압축을 푼다
$zip=new ZipArchive;//新建一个ZipArchive的对象 if($zip->open('test.zip')===TRUE){ $zip->extractTo('images');//假设解压缩到在当前路径下images文件夹内 $zip->close();//关闭处理的zip文件 }
2. 파일을 zip 파일로 압축합니다
$zip=new ZipArchive; if($zip->open('test.zip',ZipArchive::OVERWRITE)===TRUE){ $zip->addFile('image.txt');//假设加入的文件名是image.txt,在当前路径下 $zip->close(); }
3. zip 파일에 파일 추가 내용 추가
$zip=new ZipArchive; $res=$zip->open('test.zip',ZipArchive::CREATE); if($res===TRUE){ $zip->addFromString('test.txt','file content goes here'); $zip->close(); echo 'ok'; }else{ echo 'failed'; }
4. 폴더를 zip 파일로 압축합니다
function addFileToZip($path,$zip){ $handler=opendir($path); //打开当前文件夹由$path指定。 while(($filename=readdir($handler))!==false){ if($filename != "." && $filename != ".."){//文件夹文件名字为'.'和‘..',不要对他们进行操作 if(is_dir($path."/".$filename)){// 如果读取的某个对象是文件夹,则递归 addFileToZip($path."/".$filename, $zip); }else{ //将文件加入zip对象 $zip->addFile($path."/".$filename); } } } @closedir($path); } $zip=new ZipArchive(); if($zip->open('images.zip', ZipArchive::OVERWRITE)=== TRUE){ addFileToZip('images/', $zip); //调用方法,对要打包的根目录进行操作,并将ZipArchive的对象传递给方法 $zip->close(); //关闭处理的zip文件 }
위 내용은 PHP가 파일 압축 및 압축 해제를 구현하는 네 가지 상황입니다. 완료되지 않은 다른 상황도 있을 수 있으며, 이는 후속 기사에서 업데이트되어 모든 사람의 학습에 도움이 되기를 바랍니다.