php ziparchive(),php的ZipArchive类用法实例
本文实例讲述了php的ZipArchive类用法,分享给大家供大家参考。具体如下:
通常来说,php5.2开始支持ZipArchive类,php4只能使用zip函数。其实在官方实现zip类之前,已经有大牛贡献了打包解压zip文件的方法。现在php包含了ZipArchive类,当然优先使用。使用该类能创建和解压zip文件,也能直接读取zip压缩包内的内容,很方便,这里主要总结下读取和解压的过程。
解压一个包到指定目录:
$zip = new ZipArchive;
if ($zip->open('test.zip') === TRUE) {
$zip->extractTo('/my/destination/dir/');
$zip->close();
echo 'ok';
} else {
echo 'failed';
}
?>
如果只是需要读取包中某个文件的内容,需要文件名或者文件的索引值。
$zip = new ZipArchive;
if ($zip->open('test.zip') === TRUE) {
echo $zip->getFromName('example.php');
$zip->close();
}
?>
如果example.php在某目录下,获取内容时需要加上路径。
如果只知道文件名,而不知到文件的具体路径,可以搜索指定文件名的索引,再依靠索引获取内容。
$zip = new ZipArchive;
if ($zip->open('test.zip') === TRUE) {
$index=$zip->locateName('example.php', ZIPARCHIVE::FL_NOCASE|ZIPARCHIVE::FL_NODIR);
$contents = $zip->getFromIndex($index);
}
?>
上面获取索引依靠 locateName方法,如果压缩包内多个路径下有同名文件,好像只能返回第一个的索引,如果要获取所有同名文件的索引,只能使用笨办法,循环搜索。
$zip = new ZipArchive;
if ($zip->open('test.zip') === TRUE) {
for($i = 0; $i < $zip->numFiles; $i++)
{
if(substr_count($zip->getNameIndex($i), 'example.php')>0){
$contents = $zip->getFromIndex($i);
}
}
}
?>
希望本文所述对大家的php程序设计有所帮助。
php ziparchive(),php的ZipArchive类用法实例相关推荐
- python命令行参数解析OptionParser类用法实例
python命令行参数解析OptionParser类用法实例 本文实例讲述了python命令行参数解析OptionParser类的用法,分享给大家供大家参考. 具体代码如下: from opt ...
- python元类的使用_python中元类用法实例
本文实例讲述了python中元类用法,分享给大家供大家参考.具体方法分析如下: 1.元类(metaclass)是用来创建类的类 2.type(object):返回一个对象的类型,与object.__c ...
- python xlsxwriter 画图_Python XlsxWriter模块Chart类用法实例分析
本文实例讲述了Python XlsxWriter模块Chart类用法.共享给大家供大家参考,详细如下: 一 点睛 Chart类是XlsxWriter模块中图表组件的基类,支持的图表类型包括面积.条形图 ...
- java中用法实例_java中Calendar类用法实例详解
本文实例讲述了java中Calendar类用法.分享给大家供大家参考,具体如下: java中的Calendar在开发中经常被忽略,这篇博客总结一下这个类,对后面项目中使用时期的时候有帮助. Calen ...
- python中类方法与实例方法的区别-Python中的对象,方法,类,实例,函数用法分析...
本文实例分析了Python中的对象,方法,类,实例,函数用法.分享给大家供大家参考.具体分析如下: Python是一个完全面向对象的语言.不仅实例是对象,类,函数,方法也都是对象. class Foo ...
- php 类常量用法,php类常量用法实例分析
这篇文章主要介绍了php类常量用法,实例分析了php中类常量的概念.特性与相关使用技巧,需要的朋友可以参考下 本文实例讲述了php类常量用法.分享给大家供大家参考.具体如下: '; echo Foo: ...
- python类继承实例_python类继承与子类实例初始化用法分析
这篇文章主要介绍了python类继承与子类实例初始化用法,实例分析了Python类的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下 [ 先贴参考书籍原文(中文英文对照)] __init__方法介 ...
- java scanner 回车_Java Scanner类用法及nextLine()产生的换行符问题实例分析
本文实例讲述了Java Scanner类用法及nextLine()产生的换行符问题.分享给大家供大家参考,具体如下: 分析理解:Scanner sc = new Scanner(System.in); ...
- python对象编程例子-python编程进阶之类和对象用法实例分析
本文实例讲述了python类和对象用法.分享给大家供大家参考,具体如下: 前面我们都是用python面向过程编程,现在来用python创建类和对象,面向对象编程.类和对象是面向对象编程的两个主要方面. ...
最新文章
- 综述 | 语言分析技术在社会计算中的应用
- idea用token登陆github_用python和她一起唐诗宋词
- java applet 官网_java applet
- 2015-12-15 关于就近日期
- 初看jQuery,比较dojo与jQuery的不同点
- 12-Generic Timer
- 【BUG记录】记一次游戏越来越卡的BUG
- 企业微信H5_网页jssdk调用 agentconfig选人选照片等案例演示
- 单目视觉定位测距的两种方式(转载)
- CVPR2019 Oral!伯克利、麻省理工GAN图像合成最新成果(附开源代码)!
- Storm案例:统计单词个数
- js系列教程9-表单元素全解
- iOS开发日记56-详解UIImage
- 英语发音规则---W字母
- stm32通讯协议编写源码_STM32连接TFT-LCD
- Robot Framework+Autoit 安装教程
- imperva代理拦截
- Python namedtuple ——具名元组
- 快玩未转变者连不了服务器,快玩游戏未转变者怎么联机 详解 | 手游网游页游攻略大全...
- 17款漂亮的 HTML5 网站模板免费下载
热门文章
- springsecurity 登录失败_Spring Security 实战干货: 401和403状态
- mysql有dataguard吗_DataGuard部署
- 天正电气t20电气设定在哪_天正电气CAD布置烟感火灾探测器步骤教程
- Pytorch(四) --基于Pytorch实现线性回归
- Non-zero CodeForces - 1300A
- 阿里妈妈技术团队 5 篇论文入选 TheWebConf 2022
- Python机器学习--KNN归一化、距离的惩罚
- 【编译原理】CFG分析树
- 深度学习之卷积神经网络(12)深度残差网络
- HDU 1159.Common Subsequence【动态规划DP】