インターネット上には、Rar ファイルの解凍が直接サポートされていない例が多数あります。pecl を使用できます。
http://pecl.php.net/package/rar に移動して、対応するバージョンの非スレッドセーフ DLL をダウンロードします
それをphpのextディレクトリに放り込みます。
php.ini を開きます。
行を追加
拡張子=php_rar.dll
Web サーバーと PHP を再起動します
public function _unzip($fileName,$extractTO){ $fileName = iconv('utf-8','gb2312',"upload/zip/August.rar") ; - // echo $fileName . '';
- $extractTo = "upload/zip/TEST/"
-
- $rar_file = rar_open($fileName) または die('rar を開けませんでした');
- $list = rar_list($rar_file) または die('リストを取得できませんでした');
- // print_r($list);
-
-
-
- foreach($list as $file) {
- $pattern = '/"。 *"/';
- preg_match($pattern, $file, $matches, PREG_OFFSET_CAPTURE);
- $pathStr=$matches[0][0];
- $pathStr=str_replace(""",'',$pathStr);
- // print_r($pathStr);
- $entry = rar_entry_get($rar_file, $pathStr) または die('エントリが見つかりません');
- $entry->extract($extractTo);現在のディレクトリに抽出します
- }
- rar_close($rar_file)
-
- }
-
-
- コードをコピーします
;
|
php、rar