Class 'ZipArchive' not found

问题

将Mac更新到Catalina之后,PHP Class 'ZipArchive' not found

最简单的方法,重新安装php

  • 安装brew,已经安装的忽略 https://www.jianshu.com/p/346027ee3fde

  • brew update

  • brew search php

  • brew install [email protected]

  • brew link [email protected]

  • vi .bash_profile

  • 环境变量添加新的php路径 /usr/local/Cellar/php/7.3.12/bin/


    image.png
  • source .bash_profile

手动安装Zip

Class 'ZipArchive' not found

第一步:查看php是否安装了zip拓展;

php -m

第二步:安装zip模块

如果是windows下面,直接修改php.ini里面的php_zip.dll前面的分号去掉即可;
如果是linux下面,那就直接安装zip拓展就行了。

如果是yum安装的php就很好办。
先看一下php装在哪里:

whereis php

ubutun系统:

sudo apt-get install php7.0-zip

centos系统:

yum install php7.0-zip

macos系统:

  • 1、下载zip
wget http://pecl.php.net/get/zip
  • 2、解压zip
tar -zvxf zip
  • 3、解压后得到zip-1.x.x
  • 4、phpize
  • 5、./configure
  • 6、make
  • 7、sudo make install
  • 8、//提示如下信息,则表示编译成功,
Installing shared extensions:/usr/lib/php/extensions/no-debug-non-zts-20180731/

如果出现下面的某个问题

1、/usr/include/php/main/php.h: No such file or directory

需要先关闭macOS的SIP功能,然后执行:

xcode-select --install
sudo ln -s /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/ /usr/include

2、在macOS 10.15中提示:ln: /usr/include: Read-only file system,可以先执行:

sudo mount -uw /

3、configure: error: Please reinstall the libzip distribution

brew install libzip

添加php扩展

在/etc/php.ini中添加:

extension = /usr/lib/php/extensions/no-debug-non-zts-20180731/zip.so

参考

Mac OS PHP安装Zip拓展
https://easeapi.com/favorite/topic/57756561

你可能感兴趣的:(Class 'ZipArchive' not found)