php 解压zip文件函数的解决办法
内容摘要
这篇文章主要为大家详细介绍了php 解压zip文件函数的简单示例,具有一定的参考价值,可以用来参考一下。面向php教程编程,下面跟随php教程的小编来举个例子吧。
文章正文
这篇文章主要为大家详细介绍了php 解压zip文件函数的简单示例,具有一定的参考价值,可以用来参考一下。
面向php教程编程,下面跟随php教程的小编来举个例子吧。经测试代码如下:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | <code class = "php" > /** * 解压zip * * @author php教程 www.idcnote.com * @param type $zipfile 要解压的文件 * @param type $path 解压到该目录 * @param type $type * @return int */ function emUnZip( $zipfile , $path , $type = 'tpl' ) { if (! class_exists ( 'ZipArchive' , FALSE)) { return 3; //zip模块问题 } $zip = new ZipArchive(); if (@ $zip ->open( $zipfile ) !== TRUE) { return 2; //文件权限问题 } $r = explode ( '/' , $zip ->getNameIndex(0), 2); $dir = isset( $r [0]) ? $r [0] . '/' : '' ; switch ( $type ) { case 'tpl' : $re = $zip ->getFromName( $dir . 'header.php' ); if (false === $re ) return -2; break ; case 'plugin' : $plugin_name = substr ( $dir , 0, -1); $re = $zip ->getFromName( $dir . $plugin_name . '.php' ); if (false === $re ) return -1; break ; case 'backup' : $sql_name = substr ( $dir , 0, -1); if (getFileSuffix( $sql_name ) != 'sql' ) return -3; break ; } if (true === @ $zip ->extractTo( $path )) { $zip ->close(); return 0; } else { return 1; //文件权限问题 } }</code> |
注:关于php 解压zip文件函数的简单示例的内容就先介绍到这里,更多相关文章的可以留意
代码注释