2012-05-11 19 views
2

私は、指定されたディレクトリ内のすべてのファイルをループするPHPスクリプトを実行しています。見つかったファイルごとにname、filesize、modified_dateなどを返します。このスクリプトは、ほとんどのファイルの情報を正しく返しますが、中国語やその他の記号が含まれているものは除きます。その後、私は有名なfilesize stat失敗エラー(警告)を取得します。ファイル名を変更せずに、どうすればこの問題を解決できますか?filesize stat failed

必要に応じてコードを提供します。

+1

。ところで、問題はエンコーディングにあります。 – Leri

答えて

5

これまでにこの問題が発生しました。ファイルシステムのエンコーディングは、予測することは困難と難しいですが、これは通常、私の作品:

stat(iconv('UTF-8', 'ISO-8859-1', $filename)); 

はそれだけではISO8859-1と試行するUTF8からファイル名を変換します。

しかしこれはトリッキーで、ちょうどポストのコメントでジューシーな対話のために、このページを見て:あなたは、いくつかのコードが悪いではありません表示される場合http://www.rooftopsolutions.nl/blog/filesystem-encoding-and-php