当前位置: 首页>>代码示例>>PHP>>正文


PHP Clean::zip_filename方法代码示例

本文整理汇总了PHP中Clean::zip_filename方法的典型用法代码示例。如果您正苦于以下问题:PHP Clean::zip_filename方法的具体用法?PHP Clean::zip_filename怎么用?PHP Clean::zip_filename使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Clean的用法示例。


在下文中一共展示了Clean::zip_filename方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: unzip

 /**
  * Dezipper une archive contenant un ensemble de fichiers dans un dossier, avec son arborescence.
  * 
  * Inspiré de http://fr.php.net/manual/fr/ref.zip.php#79057
  * A l'origine pour remplacer $zip = new ZipArchive(); $result_open = $zip->open($fichier_import); qui plante sur le serveur Nantais s'il y a trop de fichiers dans le zip (code erreur "5 READ").
  * Mais il s'avère finalement que ça ne fonctionne pas mieux...
  * 
  * @param string   $chemin_fichier_zip
  * @param string   $dossier_dezip
  * @param bool     $use_ZipArchive   FALSE permet de nettoyer les noms des fichiers extraits : à préférer donc
  * @return int     code d'erreur (0 si RAS)
  */
 public static function unzip($chemin_fichier_zip,$dossier_dezip,$use_ZipArchive)
 {
   // Utiliser la classe ZipArchive http://fr.php.net/manual/fr/class.ziparchive.php (PHP 5 >= 5.2.0, PECL zip >= 1.1.0)
   if($use_ZipArchive)
   {
     $zip = new ZipArchive();
     $result_open = $zip->open($chemin_fichier_zip);
     if($result_open!==TRUE)
     {
       return $result_open;
     }
     $zip->extractTo($dossier_dezip);
     $zip->close();
   }
   // Utiliser les fonctions Zip http://fr.php.net/manual/fr/ref.zip.php (PHP 4 >= 4.1.0, PHP 5 >= 5.2.0, PECL zip >= 1.0.0)
   else
   {
     $ds = (substr($dossier_dezip,-1)==DS) ? '' : DS ;
     $contenu_zip = zip_open($chemin_fichier_zip);
     if(!is_resource($contenu_zip))
     {
       return $contenu_zip;
     }
     while( $zip_element = zip_read($contenu_zip) )
     {
       zip_entry_open($contenu_zip, $zip_element);
       if (substr(zip_entry_name($zip_element), -1) == DS)
       {
         // C'est un dossier
         mkdir( $dossier_dezip.$ds.zip_entry_name($zip_element) );
       }
       else
       {
         // C'est un fichier
         file_put_contents( $dossier_dezip.$ds.Clean::zip_filename(zip_entry_name($zip_element)) , zip_entry_read($zip_element,zip_entry_filesize($zip_element)) );
       }
       zip_entry_close($zip_element);
     }
     zip_close($contenu_zip);
   }
   // Tout s'est bien passé
   return 0;
 }
开发者ID:rhertzog,项目名称:lcs,代码行数:55,代码来源:class.FileSystem.php


注:本文中的Clean::zip_filename方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。