php實現rar檔案的讀取和解壓

2021-09-08 14:17:23 字數 1637 閱讀 9606

php rar archiving 模組 (php_rar) 是乙個讀取和解壓rar檔案的模組,但不提供rar壓縮(打包)的功能。

3.在php.ini中加入一行php_rar擴充套件引用宣告 extension=php_rar.dll

4.如果使用apache伺服器,就需要重啟apache。iis下以fastcgi模式載入的php則不需要進一步操作了。

5.解壓縮zip檔案  方法一

$zip = new ziparchive();//新建乙個ziparchive的物件

if ($zip->open(讀取上傳檔案路徑) === true)

6.解壓縮zip檔案  方法二

$archive = new pclzip(讀取上傳檔案路徑);

if ($archive->extract(pclzip_opt_path, 解壓檔案路徑)) try catch (exception $e)

7.解壓縮rar檔案

$rar_file = rar_open(讀取上傳檔案路徑) or die("failed to open rar archive");

$entries = rar_list($rar_file);

foreach ($entries as $entry)  

rar_close($rar_file); 

安裝rar linux環境外掛程式

wget

然後解壓

gunzip rar-4.0.0.tgztar -xvf rar-4.0.0.tar

檢視寶塔面板php7.2安裝路徑下的是否存在/www/server/php/72/bin/phpize,如果存在,進入剛才解壓的目錄執行這個phpize

cd rar-4.0.0/www/server/php/72/bin/phpize

在解壓目錄裡執行phpize主要是為了偵測當前php執行環境,給rar原始碼生成configure配置的相關檔案,以便後期編譯需要。

執行configure ,注意後面的--with-php-config引數一定不能缺,這個的作用是關聯上當前需要關聯的php版本,尤其是在安裝多個不同版本php時。

./configure --with-php-config=/www/server/php/72/bin/php-config

編譯原始碼

make && make install

編譯完成在最後會提示生成的rar.so所在的路徑。

build complete.don't forget to run 'make test'.installing shared extensions: /www/server/php/72/lib/php/extensions/no-debug-non-zts-20170718/

在php7.2的配置檔案php.ini最後一行新增

[rar]

extension="/www/server/php/72/lib/php/extensions/no-debug-non-zts-20170718/rar.so"

重啟一下相應版本的php7.2 fpm服務,或者乾脆重啟一下伺服器。

檢查一下php7.2是否載入rar擴充套件成功

/www/server/php/72/bin/php -m

看到執行命令後返回的文字裡面有rar,成功!

PHP的rar解壓讀取擴充套件包學習

作為壓縮解壓方面的擴充套件學習,兩大王牌壓縮格式 rar 和 zip 一直是計算機領域的壓縮終結者。rar 格式的壓縮包是 windows 系統中有接近統治地位的存在,今天我們學習的 php 擴充套件就是針對於 rar 的壓縮包操作,不過,php 的 rar 擴充套件僅能讀取和解壓 rar 格式的壓...

linux下rar和zip檔案的壓縮和解壓縮

使用linux時,常常會遇到windows下的rar和zip壓縮文件,解壓這些文件,都必須要有專門的軟體,下面給介紹一下。1.zip linx下自帶了乙個unzip的程式可以解壓縮檔案,解壓命令是 unzip filename.zip 同樣也提供了乙個zip程式壓縮zip檔案,命令是 zip fil...

linux下解壓rar檔案的軟體安裝和解壓命令

一般linux放出來的壓縮包都是tar格式的,但是我們自己在壓縮一些本地檔案的時候,多數都是用的rar格式。那麼這個我們上傳到linux的伺服器上面,就不能直接用命令解壓了。因為linux預設是不支援的rar格式解壓的,所以我們得先安裝rar的軟體。wget 32位 wget 64位 rar軟體對系...