您的位置:

phpzip模块,php gzip压缩

本文目录一览:

php 的zip rar 组件 是怎么安装的 请高手指点

首先从php的官方网站 下载windows版本的,有两种版本:PHP 5.3.6 zip package和PHP 5.3.6 installer,目前最新版本就是5.3.6,pharmar使用的是5.3.6版本。PHP 5.3.6installer为自动安装方式,虽然比较自动化,但在很多方面受到限制,因此pharmar不推荐使用这种方式,下面介绍PHP 5.3.6zip package压缩包方式下的手动安装。

1)、将PHP的压缩包zip解压到一个目录下,推荐:“C:/PHP”,pharmar的是D:\Program Files\Php。

2)、将PHP目录(D:\Program Files\Php)下的 php.ini-dist 文件重命名为 php.ini,PHP的配置文件就是它,修改以下几个地方,修改好后把 php.ini 文件复制到 C:\WINDOWS\ 目录里:

extension_dir="D:\Program Files\Php\ext" ,指向php文件夹下放置“php_*.dll”文件的路径。PHP4和PHP5的路径在这里有所区别。

doc_root="D:\PHP" ,指向前面apache设置的首页位置;

default_charset="gb2312" ,修改默认字符集,这里,如果前面有分号“;”,去掉这个分号;

register_globals=Off 改为 register_globals=On ,使传递全局变量有效;

extension=php_dba.dll 如果前面有分号,取消分号,以下同;

extension=php_dbase.dll

extension=php_gd2.dll GD库做图,一般用于图形验证码;

extension=php_mysql.dll 用于连接MYSQL数据库;

3)、将PHP目录下的 php5ts.dll 文件拷贝到 C:\WINDOWS\system32 目录。

4)、最后修改 Apache 的 httpd.conf 文件。在该文件的末尾添加如下2行,表示以模块方式安装PHP进入Apache:

LoadModule php5_module D:/Program Files/Php/php5apache2_2.dll

AddType application/x-httpd-php .php

zip密码 php

用PHP的zip模块进行压缩加密.

开始

$zipArc = new \ZipArchive();if ($zipArc-open('/home/test.zip', ZipArchive::CREATE | ZipArchive::OVERWRITE) === true) {    //设置密码 注意此处不是加密,仅仅是设置密码

   if (!$zipArc-setPassword('password')) {        throw new RuntimeException('Set password failed');

   }    //往压缩包内添加文件

   $zipArc-addFile('/home/test.png', '1/test.png');    //加密文件 此处文件名及路径是压缩包内的

   if (!$zipArc-setEncryptionName('1/test.png', ZipArchive::EM_AES_256)) {        throw new RuntimeException('Set encryption failed');

   }

}

$zipArc-close();

注意事项

1 PHP7.2以下不支持加密

php7.2 以下是不支持加密的,我们看一下php官方文档中的解释

从PHP 7.2.0和libzip 1.2.0开始,密码用于解压缩归档,也是ZipArchive :: setEncryptionName() 和ZipArchive :: setEncryptionIndex()的默认密码。

以前,此功能仅设置用于解压缩存档的密码; 它没有将非密码保护的ZipArchive 变成受密码保护的ZipArchive。

也就是说php7.2之前,setPassword('password')这个方法仅仅是设置setEncryptionName()和setEncryptionIndex()的默认密码,却没有进行加密操作!!!,就问你坑不坑!!

2 方法找不到

提示没有setEncryptionName和setEncryptionIndex方法时,请编译时zip模块时用以下参数

--with-libzip

--enable-zip

3 目录结构问题

待压缩的文件目录,比说说是/home/test/a.png

压缩后,你发现压缩包内的目录结构是/home/test/a.png,

也就是说压缩包原封不动的保持了原来文件的目录.可是我们想自定义压缩包目录怎么办呢?

$a = '/home/test.png';

$b = '1/test.png';//$a是待添加的文件路径  $b是压缩包内的路径$zipArc-addFile($a, $b);

如何安装 php 的zip模块

第一步、找到php.ini文件第二部、用记事本打开第三步、使用ctrl键+F键搜索;extension=php_zip.dll第四步、去除extension前面的分号“;”,如extension=php_zip.dll第五步、保存重启Apache或其他服务器。如图: