当前位置: 首页 > 后端技术 > PHP

mac10.15PHP安装zip扩展【安装其他扩展也可以使用】

时间:2023-03-29 22:29:50 PHP

使用composer安装项目报错,出现如下错误:phpoffice/phpspreadsheet1.9.0requiresext-zip*->the请求PHPExten发现问题是php缺少zip扩展,于是折腾了一下。mac本身安装了php,所以终端使用的php命令默认是mac安装的版本。1.检查MAC10.15自带的php版本,7.3.11版本PHP7.3.11(cli)(built:Feb29202002:50:36)(NTS)Copyright(c)1997-2018ThePHPGroupZendEnginev3.3.11,版权所有(c)1998-2018ZendTechnologies2。首先下载扩展安装包,[http://pecl.php.net/get/zip](http://pecl.php.net/get/zip)3、下载完成后进入下载目录,然后解压tar-zvxfzip-1.18.2解压后得到zip-1.18.2cdzip-1.18.24,如果出现如下错误则执行:grep:/usr/include/php/main/php.h:Nosuchfileordirectorygrep:/usr/include/php/Zend/zend_modules.h:没有这样的文件或目录扩展API号:找不到autoconf。请检查您的autoconf安装和$PHP_AUTOCONF环境变量。然后,重新运行这个script.a,报错信息doesnotfindautoconf,先安装这个brewinstallautoconfb,process又报错sudoln-s/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include//usr这里可能会报错:①没有操作权限,需要先关闭系统安全,报错:ln:/usr/include:Operationnotpermitted操作如下:1.先重启你的Macc电脑,开机时按住command+R2。进入后在上方菜单栏找到终端,执行代码:csrutildisable,关闭系统保护,然后重启PS:如果要再次开启系统保护,则执行:csrutilenable②文件权限问题ln:/usr/include:只读文件系统需要执行如下命令sudomount-uw/5,然后执行命令sudophpize出现如下结果,说明配置为:PHPApiVersion:20180731ZendModule是successfulApiNo:20180731ZendExtensionApiNo:3201807316指定路径,先查看php-config的路径whichphp-config然后执行命令./configure--with-php-config=/usr/bin/php-config(你的php-config路径)这里可能会出现如下错误:checkingforlibzip...notfoundconfigure:error:Pleasereinstallthelibzipdistribution所以需要先安装libzip,执行如下命令:brewinstalllibzip安装libzip后,你需要执行它再次./配置这一行命令7.安装,执行命令sudomakesudomakeinstall出现Installingsharedextensions:/usr/lib/php/extensions/no-debug-non-zts-20180731/说明扩展安装成功8、最后需要在php中安装sharedextensions。mac在ini中启用扩展的默认目录是/private/etc/php.ini.default,需要复制重命名为php.inicd/private/etcsudocpphp.ini.defaultphp.ini然后添加一个lineextension=zip到php.ini.so9。检查zip模块。如果出现zip,则说明成功。php-m|grepzip