Maison  >  Article  >  développement back-end  >  Explication détaillée étape par étape sur la façon de décompresser le contenu d'un package zip en php dans un répertoire spécifié

Explication détaillée étape par étape sur la façon de décompresser le contenu d'un package zip en php dans un répertoire spécifié

php中世界最好的语言
php中世界最好的语言original
2018-04-11 13:23:421967parcourir

Cette fois, je vais vous donner une explication détaillée des étapes pour décompresser le contenu du package zip dans le répertoire spécifié avec php. Quelles sont les précautions pour décompresser le contenu du package zip vers le. répertoire spécifié avec php. Ce qui suit est un cas pratique, jetons un coup d'œil.

Cet article vous présente le code php décompressant le contenu du package zip dans le répertoire spécifié. Les amis dans le besoin peuvent s'y référer.

Structure du répertoire  :

test

test/index.php
test/test_zip.zip
test/test_zip

<span style="font-size:14px;"><?php
	header(&#39;Content-type:text/html;charset=utf-8&#39;);
	$filename = &#39;test_zip.zip&#39;;
	$path = &#39;./test_zip.zip&#39;;
	$dir = &#39;test_zip&#39;;
	if(!is_dir($dir)) {
		mkdir($dir, 0777, true);//创建目录保存解压内容
	}
	if(file_exists($filename)) {
		$resource = zip_open($filename);
		while($zip = zip_read($resource)) {
			if(zip_entry_open($resource, $zip)) {
		$file_content = zip_entry_name($zip);//获得文件名,mac压缩成zip,解压需要过滤资源库隐藏文件
				$file_name = substr($file_content, strrpos($file_content, &#39;/&#39;) +1);
				if(!is_dir($file_name) && $file_name) {
					$save_path = $dir .&#39;/&#39;. $file_name;
					if(file_exists($save_path)) {
					echo &#39;文件夹内已存在文件 "&#39; . $file_name . &#39;" <pre />';
					}else {
						echo $file_name . '<pre />';	
						$file_size = zip_entry_filesize($zip);
						$file = zip_entry_read($zip, $file_size);
						file_put_contents($save_path, $file);
						zip_entry_close($zip);
					}
					
				}
			}
		}
		zip_close($resource);
	}</span>

Je pense que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez payer. attention aux autres articles connexes sur le site php chinois !

Lecture recommandée :

Comment supprimer les valeurs nulles ou les éléments vides dans un tableau en PHP

implémente PHP une fonction de journalisation

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn