我用的是目前最新版的 PHP 7.4.14
内置 Zip 扩展版本是 1.15.6(估计 2019 年的)
https://pecl.php.net/package/zip
最新的版本是 1.19.2(PHP 8.0.1 内置的就是这个)
由于业务需要,我想把多个文件压缩在一个存档里,看了 PHP 文档,只有 Zip 可选
想用最新版的,于是
extension=zip
结果:
PHP Warning:Module 'zip' already loaded in Unknown on line 0
可有大神知道如何解决!
如果行不通,为啥 PECL 上提供下载?
回答
PHP 5.3 之后该扩展已经内置。之前的版本,Windows 用户需要在 php.ini 里使 php_zip.dll 可用,以便使用这些函数。
另附 Windows 的 DLL 下载。
下载对应版本的 zip 包后,提取其中的 dll 复制文件至 php 安装位置的 ext 目录,后修改 php.ini 中新增。
extension=xxx.dll
或搜索 extension 若已有启用的 php_zip.dll 需注释,或直接修改 dll 的路径,dll 路径可以是相对于配置文件中 extension_dir 的,也可以是绝对路径,但需要有相关的读取权限。