Fatal error: Class 'ZipArchive' not found的解決辦法

來源:互聯網
上載者:User

 今天在Linux底下上傳Excel檔案並顯示輸出時,拋出“ZipArchive library is not enabled” 的異常。而我在本地的windows下的代碼則是運行正常的。

     原因是:在Linux下沒有php_zip.dll這個檔案(有也不會起作用的),所以需要重新編譯一下php的zip模組。
      在Unix/Linux下的解決辦法 :

      1、依次運行如下命令:

      cd /opt/lampp/
      wget http://pecl.php.net/get/zip   (預設會線上下載最新版本的,我這裡用的是zip-1.10.2.tgz)
      tar -zxvf zip-1.10.2.tgz   (所下載的包名)
      cd zip-1.10.2
      /opt/lampp/bin/phpize    (對應的phpize路徑 find / -name phpize 出來結果/opt/lampp/bin/phpize)
      ./configure --with-php-config=/opt/lampp/bin/php-config (對應的php-config路徑)
      make
      make instal

  

     2、查看產生的模組路徑(安裝完之後,螢幕上會提示zip.so的位置):
cd /usr/lib/php/modules/ (對應的extensions路徑 /usr/lib/php/modules/)

Installing shared extensions:     /opt/lampp/lib/php/extensions/no-debug-non-zts-20090626/

     3、修改php.ini如:


     

 增加 extension=/opt/lampp/lib/php/extensions/no-debug-non-zts-20090626/zip.so

      然後同樣在php.ini檔案中,將zlib.output_compression = Off 改為 zlib.output_compression = On ;

      4、最後再重啟一下XAMPP服務:
      /opt/lampp/lampp  stop
      /opt/lampp/lampp  start

      這個針對php的zip模組就安裝完成了,能夠在php中使用ZipArchive類了。


      附:在Windows下的解決辦法就比較簡單了 :

     1、在php.ini檔案中,將extension=php_zip.dll前面的分號“;”去除
      然後同樣在php.ini檔案中,將 zlib.output_compression = Off 改為 zlib.output_compression = On ;

     2、重啟Apache伺服器。

 

注意事項:

若重啟 xampp 時提示:

Warning: PHP Startup: Unable to load dynamic library ‘/opt/lampp/lib/php/extensions/no-debug-non-zts-20090626/memcache.so’ – /opt/lampp/lib/php/extensions/no-debug-non-zts-20090626/memcache.so: wrong ELF class: ELFCLASS64 in Unknown on line 0

說明您的作業系統是 64 位元的,而 xampp 只對 32 位的系統提供支援。請下載如下壓縮包替換對應的檔案即可。

http://developerworks-ourplanet.googlecode.com/files/no-debug-non-zts-20090626.tar.gz

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.