今天在生成excel文件的是时候遇到个报错,php Class ‘ZipArchive’ not found,经查阅资料,发现是因为没有按安装zip拓展。

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

php -m

C:\Users\Administrator>php -m
[PHP Modules]
bcmath
bz2
calendar
Core
ctype
curl
date
dom
fileinfo
filter
ftp
gd
hash
iconv
json
libxml
mbstring
mcrypt
mysqli
mysqlnd
openssl
pcre
PDO
pdo_mysql
pdo_sqlite
Phar
readline
Reflection
session
SimpleXML
SPL
sqlite3
standard
tokenizer
wddx
xml
xmlreader
xmlwriter
xsl
zlib
[Zend Modules]

可以看到,没有安装zip模块。

第二步:安装zip模块

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

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

whereis php

ubuntu@ip-172-31-8-96:~$ whereis php
php: /usr/bin/php /usr/bin/php7.0 /usr/lib/php /etc/php /usr/include/php /usr/share/php7.0-mcrypt /usr/share/php7.0-gd /usr/share/php7.0-bcmath /usr/share/php7.0-interbase /usr/share/php7.0-opcache /usr/share/php7.0-pgsql /usr/share/php7.0-curl /usr/share/php7.0-mysql /usr/share/php7.0-dba /usr/share/php7.0-common /usr/share/php7.0-sybase /usr/share/php7.0-xml /usr/share/php7.0-mbstring /usr/share/php7.0-gmp /usr/share/php7.0-pspell /usr/share/php7.0-ldap /usr/share/php7.0-soap /usr/share/php7.0-recode /usr/share/php7.0-imap /usr/share/php7.0-snmp /usr/share/php7.0-xmlrpc /usr/share/php7.0-odbc /usr/share/php7.0-intl /usr/share/php7.0-tidy /usr/share/php7.0-enchant /usr/share/php7.0-zip /usr/share/php /usr/share/php7.0-bz2 /usr/share/php7.0-sqlite3 /usr/share/php7.0-json /usr/share/php7.0-readline /usr/share/man/man1/php.1.gz

可以查看到php安装位置及已经安装的拓展的格式,那么,我们接下来直接安装即可:

ubutun系统:

sudo apt-get install php7.0-zip

centos系统:

yum install php7.0-zip

再次运行即可。

更多推荐

php Class 'ZipArchive' not found