php ziparchive での中国語文字化けの解決策: まず、圧縮パッケージを開いて内部ファイル名とディレクトリをトランスコードし、トランスコード後に圧縮パッケージを閉じ、解凍のために再度開きます。
この記事の動作環境:Windows 7 システム、PHP バージョン 7.1、DELL G3 パソコン
中国語文字化けの解決方法ZipArchive を使用して PHP を解凍する場合の問題
PHP 付属の ZipArchive を使用して中国語のファイル名を持つ圧縮パッケージを解凍すると、文字化けが発生します。現象は次のとおりです。 ##元の構造:
解凍コード:
$zip = new \ZipArchive(); $res = $zip->open('./钱学森班.zip'); if ($res !== true){ throw new \Exception('打开压缩包失败'); }$zip->extractTo('./cache'); $zip->close();
理由
解決策
## 元の圧縮パッケージ ファイルはトランスコーディング後に変更されるため、
トランスコーディングを繰り返すことはできません。元のファイルに影響を与えたくない場合は、
最初にコピーする必要があります以上がphp ziparchiveで中国語が文字化けする場合はどうすればいいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。