导航:首页 > 编程语言 > ziparchivephp开启

ziparchivephp开启

发布时间:2023-02-01 03:27:11

Ⅰ 力求php高手,在Linux下如何使用 ZipArchive

ZipArchive有依赖,肯定是你环境配置问题,打开php错误显示,查找问题
Linux下可以执行shell解压

exec("/usr/bin/unzip a.zip")

Ⅱ PHP的ZipArchive无法打开文件的错误,有谁遇到过的

Ⅲ php打包压缩文件之ZipArchive方法用法分析

本文实例讲述了php打包压缩文件之ZipArchive方法用法。分享给大家供大家参考,具体如下:
前面说到了php打包压缩文件之PclZip方法,今天来说下另一种更为简单的方法,使用ZipArchive来压缩文件。这个是php的扩展类,自php5.2版本以后就已经支持这个扩展,如果你在使用的时候出现错误,查看下php.ini里面的extension=php_zip.dll前面的分号有没有去掉,然后再重启Apache这样才能使用这个类库。
使用ZipArchive压缩文件是非常简单的,php官网已经给我提供了很多相关示例,大家可以看下
http://www.php.net/manual/zh/class.ziparchive.php,例如:
<?php
$zip
=
new
ZipArchive;
//首先实例化这个类
if
($zip->open('test.zip')
===
TRUE)
{
//然后查看是否存在test.zip这个压缩包
$zip->addFile('too.php');
$zip->addFile('test.php');
//将too.php和test.php两个文件添加到test.zip压缩包中
$zip->close();
//关闭
echo
'ok';
}
else
{
echo
'failed';
}
?>
下面是一些参数说明:
<?php
/********
ziparchive
可选参数
*******/
/*
1.ZipArchive::addEmptyDir
添加一个新的文件目录
2.ZipArchive::addFile
将文件添加到指定zip压缩包中。
3.ZipArchive::addFromString
添加的文件同时将内容添加进去
4.ZipArchive::close
关闭ziparchive
5.ZipArchive::extractTo
将压缩包解压
6.ZipArchive::open
打开一个zip压缩包
7.ZipArchive::getStatusString
返回压缩时的状态内容,包括错误信息,压缩信息等等
8.ZipArchive::deleteIndex
删除压缩包中的某一个文件,如:deleteIndex(0)删除第一个文件
9.ZipArchive::deleteName
删除压缩包中的某一个文件名称,同时也将文件删除。
......
*/
?>
总之只要你的php5.2版本以上,使用ZipArchive来进行文件压缩还是比较方便的。具体的和PclZip哪一个运行速度比较快,这个磊子还没有做过测试,大家感兴趣的可以折腾折腾。
更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP操作zip文件及压缩技巧总结》、《php文件操作总结》、《php正则表达式用法总结》、《PHP运算与运算符用法总结》、《PHP基本语法入门教程》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。

Ⅳ 关于PHP的zipArchive()

可能是PHP可用内存的限制造成的,把 php.ini 中的
memory_limit
这个选项的值设大一点试试看。

也可以在 php 文件中设置,比如:

ini_set('memory_limit', '32M');

补充:
32M 还不够的话,再往上加。
尝试用 php.ini 文件设置。

Ⅳ php如何取消ZipArchive压缩

试试:ZipArchive :: getStatusString 和 ZipArchive::close

不对就看文档:PHP ZipArchive类官方文档

Ⅵ 宝塔面板php7.3部署项目提示不支持ZipArchive

迁移ShowDoc到外部环境提示没有安装ZipArchvie

1 # cd /www/server/php/73/src/ext/zip/
2 # ./configure --with-php-config=/www/server/php/73/bin/php-config
3 # make && make install
4 # echo "extension = zip.so" >> /www/server/php/73/etc/php.ini
5 # 重启宝塔面板php服务

Ⅶ 宝塔面板php7.3&7.4版本不支持ZipArchive手工安装扩展方法

宝塔面板安装的PHP7.3和7.4默认已经不带zip扩展,要手工安装zip扩展首先需要安装libzip,方法如下:

安装完成后,查看是否存在/usr/local/lib/pkgconfig目录,如果存在,执行如下命令来设置PKG_CONFIG_PATH:
export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig/"

在SSH命令行界面执行以下语句:

最后在重启一下 PHP 服务即可。

宝塔面板php7.4版本不支持ZipArchive导致程序无法后台直接更新的解决方法
在SSH命令行界面执行以下语句:

最后在重启一下 PHP 服务即可。

Ⅷ 怎么判断ziparchive php扩展是否打开

1.文件下载
header("Content-type: text/html; charset=utf-8"); //设置头信息
if (!file_exists($file_dir.$name)){ //判断是否存在某个文件
echo "File not found!"; //如果不存在就提示用户文件未找到
} else {
$file = fopen($file_dir.$name,"r"); //否则就读取文件
Header("Content-type: application/octet-stream"); //设置浏览器下载需要的头,告诉客户端的浏览器服务端返回的文件形式 是一个下载文件
Header("Accept-Ranges: bytes"); //告诉客户端浏览器返回的文件大小是按照字节进行计算的
Header("Accept-Length: ".filesize($file_dir . $name)); //告诉浏览器返回的文件大小
Header("Content-Disposition: attachment; filename=".$name); //:告诉浏览器返回的文件的名称
echo fread($file, filesize($file_dir.$name)); //按字节读取文件
fclose($file);//关闭文件资源
}
2.文件压缩:
PHP ZipArchive 是PHP自带的扩展类,可以轻松实现ZIP文件的压缩和解压,使用前首先要确保PHP ZIP 扩展已经开启,
addEmptyDir() 添加一个新的文件目录
addFile() 将文件添加到指定zip压缩包中。
ddFromString()添加的文件同时将内容添加进去
open() 打开一个zip压缩包
close()关闭ziparchive
extractTo()将压缩包解压
getStatusString()返回压缩时的状态内容,包括错误信息,压缩信息等等
deleteIndex()删除压缩包中的某一个文件,如:deleteIndex(0)删除第一个文件
deleteName()删除压缩包中的某一个文件名称,同时也将文件删除。
注意点:使用open方法的时候,第二个参数$flags是可选的,$flags用来指定对打开的zip文件的处理方式,共有四种情况
1. ZIPARCHIVE::OVERWRITE 总是创建一个新的文件,如果指定的zip文件存在,则会覆盖掉
2.ZIPARCHIVE::CREATE 如果指定的zip文件不存在,则新建一个
3. ZIPARCHIVE::EXCL 如果指定的zip文件存在,则会报错
4. ZIPARCHIVE::CHECKCONS
一、解压缩zip文件
$zip=new ZipArchive;//新建一个ZipArchive的对象
if($zip->open('test.zip')===TRUE){
$zip->extractTo('images');//假设解压缩到在当前路径下images文件夹
$zip->close();//关闭处理的zip文件
}
二、将文件压缩成zip文件
$zip=new ZipArchive;
if($zip->open('test.zip',ZipArchive::OVERWRITE)===TRUE){
$zip->addFile('image.txt');//假设加入的文件名是image.txt,在当前路径下
$zip->close();
}
三、文件追加内容添加到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';
}
四、将文件夹打包成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文件
}
3.php处理flash扩展:
ming库:
<?php
$f = new SWFFont( '_sans' ); //创建指向一个内置字体(_sans)的指针
$t = new SWFTextField(); //创建文本字段
$t->setFont( $f ); //设定字体
$t->setColor( 0, 0, 0 );//颜色
$t->setHeight( 400 ); //大小,
$t->addString( 'Hello World' ); //提供一些文本内容(“Hello World”)
$m = new SWFMovie(); //创建了一个 SWFMovie 对象并设定其尺寸
$m->setDimension( 2500, 800 );
$m->add( $t ); //向动画中添加了文本元素并将动画保存到文件中。
$m->save( 'hello.swf' ); //在本地保存为 hello.swf
?>
打开浏览器输入 hello.swf 就可以看到了哦。
header( 'Content-type: application/x-shockwave-flash' );
$m = new SWFMovie();
$m->setDimension( 300, 300 );
$s = new SWFShape();
$s->setLine( 5, 0, 0, 0 );
$s->movePenTo( -100, -100 );
$s->drawLineTo( 100, 100 );
$ts = $m->add( $s );
$ts->moveTo( 150, 150 );
for( $i = 0; $i < 100; $i++ ) {
$ts->rotate( 10 );
$m->nextframe();
}
$m->save( 'rotate.swf' );
从 -100, -100 到 100, 100 画了一条直线。这将把直线的中心放在坐标 0,0 处。这样,当我在旋转图形时,直线的中心将发生旋转。
当我向动画中添加图形时,将移动返回到框架中心的 SWFDisplayItem。然后用 rotate() 方法使它旋转并每旋转一周就增大其框架。
<?php
$img = new SWFBitmap(file_get_contents( 'megan.jpg' ));
$s = new SWFShape();
$imgf = $s->addFill( $img );
$s->setRightFill( $imgf );
$s->movePenTo( 0, 0 );
$s->drawLineTo( $img->getWidth(), 0 );
$s->drawLineTo( $img->getWidth(), $img->getHeight() );
$s->drawLineTo( 0, $img->getHeight() );
$s->drawLineTo( 0, 0 );
$m = new SWFMovie();
$m->setDimension( $img->getWidth() * 2, $img->getHeight() * 2 );
$is = $m->add( $s );
$is->moveTo( $img->getWidth() / 2, $img->getHeight() / 2 );
for( $i = 0; $i < 10; $i++ )
{
$is->skewx( 0.02 );
$is->skewy( -0.03 );
$m->nextframe();
}
$m->save( 'image.swf' );

Ⅸ PHP的ZipArchive无法打开文件的错误,有谁遇到过的

我遇见过,这说明文件压缩的不完整,所以解压不出来

Ⅹ php ZipArchive 能否在指定目录生成压缩包

当然可以啊,亲


下面代码就是在/tmp目录下生成aaaa.zip文件

$zip=newZipArchive();
$zip->open('/tmp/aaaa.zip',ZipArchive::CREATE);
$zip->addEmptyDir('dir1');
$zip->close();
阅读全文

与ziparchivephp开启相关的资料

热点内容
有服务器地址怎么安装软件 浏览:659
安卓如何完全清除数据 浏览:690
安卓安卓证书怎么信任 浏览:53
服务器被攻击如何解决 浏览:221
学霸变成程序员 浏览:881
c语言编译错误fatalerror 浏览:441
ipv4内部服务器地址怎么分配 浏览:463
java线程安全的方法 浏览:950
重复命令画梯形 浏览:164
在疫情就是命令 浏览:328
自己搭建一个什么服务器好玩 浏览:253
java基础马士兵 浏览:823
完美世界手游如何查看服务器 浏览:859
光遇安卓与ios什么时候互通 浏览:598
js如何运行时编译 浏览:917
引力app在哪里下载 浏览:609
编写app如何得到钱 浏览:801
吉利汽车软件放哪个文件夹安装 浏览:223
多文件编译c 浏览:543
头顶加密后为什么反而更稀疏 浏览:794