本文目錄一覽:
php 的zip rar 組件 是怎麼安裝的 請高手指點
首先從php的官方網站 下載windows版本的,有兩種版本:PHP 5.3.6 zip package和PHP 5.3.6 installer,目前最新版本就是5.3.6,pharmar使用的是5.3.6版本。PHP 5.3.6installer為自動安裝方式,雖然比較自動化,但在很多方面受到限制,因此pharmar不推薦使用這種方式,下面介紹PHP 5.3.6zip package壓縮包方式下的手動安裝。
1)、將PHP的壓縮包zip解壓到一個目錄下,推薦:“C:/PHP”,pharmar的是D:\Program Files\Php。
2)、將PHP目錄(D:\Program Files\Php)下的 php.ini-dist 文件重命名為 php.ini,PHP的配置文件就是它,修改以下幾個地方,修改好後把 php.ini 文件複製到 C:\WINDOWS\ 目錄里:
extension_dir=”D:\Program Files\Php\ext” ,指向php文件夾下放置“php_*.dll”文件的路徑。PHP4和PHP5的路徑在這裡有所區別。
doc_root=”D:\PHP” ,指向前面apache設置的首頁位置;
default_charset=”gb2312″ ,修改默認字符集,這裡,如果前面有分號“;”,去掉這個分號;
register_globals=Off 改為 register_globals=On ,使傳遞全局變量有效;
extension=php_dba.dll 如果前面有分號,取消分號,以下同;
extension=php_dbase.dll
extension=php_gd2.dll GD庫做圖,一般用於圖形驗證碼;
extension=php_mysql.dll 用於連接MYSQL數據庫;
3)、將PHP目錄下的 php5ts.dll 文件拷貝到 C:\WINDOWS\system32 目錄。
4)、最後修改 Apache 的 httpd.conf 文件。在該文件的末尾添加如下2行,表示以模塊方式安裝PHP進入Apache:
LoadModule php5_module D:/Program Files/Php/php5apache2_2.dll
AddType application/x-httpd-php .php
zip密碼 php
用PHP的zip模塊進行壓縮加密.
開始
$zipArc = new \ZipArchive();if ($zipArc-open(‘/home/test.zip’, ZipArchive::CREATE | ZipArchive::OVERWRITE) === true) { //設置密碼 注意此處不是加密,僅僅是設置密碼
if (!$zipArc-setPassword(‘password’)) { throw new RuntimeException(‘Set password failed’);
} //往壓縮包內添加文件
$zipArc-addFile(‘/home/test.png’, ‘1/test.png’); //加密文件 此處文件名及路徑是壓縮包內的
if (!$zipArc-setEncryptionName(‘1/test.png’, ZipArchive::EM_AES_256)) { throw new RuntimeException(‘Set encryption failed’);
}
}
$zipArc-close();
注意事項
1 PHP7.2以下不支持加密
php7.2 以下是不支持加密的,我們看一下php官方文檔中的解釋
從PHP 7.2.0和libzip 1.2.0開始,密碼用於解壓縮歸檔,也是ZipArchive :: setEncryptionName() 和ZipArchive :: setEncryptionIndex()的默認密碼。
以前,此功能僅設置用於解壓縮存檔的密碼; 它沒有將非密碼保護的ZipArchive 變成受密碼保護的ZipArchive。
也就是說php7.2之前,setPassword(‘password’)這個方法僅僅是設置setEncryptionName()和setEncryptionIndex()的默認密碼,卻沒有進行加密操作!!!,就問你坑不坑!!
2 方法找不到
提示沒有setEncryptionName和setEncryptionIndex方法時,請編譯時zip模塊時用以下參數
–with-libzip
–enable-zip
3 目錄結構問題
待壓縮的文件目錄,比說說是/home/test/a.png
壓縮後,你發現壓縮包內的目錄結構是/home/test/a.png,
也就是說壓縮包原封不動的保持了原來文件的目錄.可是我們想自定義壓縮包目錄怎麼辦呢?
$a = ‘/home/test.png’;
$b = ‘1/test.png’;//$a是待添加的文件路徑 $b是壓縮包內的路徑$zipArc-addFile($a, $b);
如何安裝 php 的zip模塊
第一步、找到php.ini文件第二部、用記事本打開第三步、使用ctrl鍵+F鍵搜索;extension=php_zip.dll第四步、去除extension前面的分號“;”,如extension=php_zip.dll第五步、保存重啟Apache或其他服務器。如圖:
原創文章,作者:WSDRA,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/331393.html