ZipArchive(); を使用します。Zip アーカイブ (サーバーによって作成されたものではなく、FTP にアップロードされたもの) 内のファイル名を一覧表示します。
問題は、ファイル名に正しく表示されないフランス語文字 (é à ô â à è などのアクセント) が含まれていることです。代わりに「�」記号が表示されます。
ページは utf8 でエンコードされており、スクリプトの残りの部分にはアクセントの問題はありません。
$toune で htmlentities() または utf8_encode() を実行しようとしましたが、役に立ちませんでした...
ここに私のコードがあります:
header('Content-Type: text/html; charset=utf-8');
$downloadlink = "pp/86 Crew - 2000 - Bad Bad Reggae.zip";
$za = new ZipArchive();
$za->open($downloadlink);
for( $i = 0; $i < $za->numFiles; $i++ ){
$stat = $za->statIndex( $i );
$tounes = array( basename( $stat['name'] ) . PHP_EOL );
foreach($tounes as $toune) {
echo $toune;
}
}