ホームページ > バックエンド開発 > PHPチュートリアル > Windows 上の PHP で UTF-8 ファイル名を処理するにはどうすればよいですか?

Windows 上の PHP で UTF-8 ファイル名を処理するにはどうすればよいですか?

Linda Hamilton
リリース: 2024-11-03 14:18:31
オリジナル
213 人が閲覧しました

How Can I Handle UTF-8 Filenames in PHP on Windows?

PHP - Windows での UTF-8 ファイル名の処理

問題の説明

UTF-8 でエンコードされたファイル名を使用してファイルをアップロードすると、Windows で文字が歪んでしまいます。

提案された解決策

この問題を解決するための元の提案には、iconv() 関数を使用してファイル名を Windows システムと互換性のあるコード ページ (CP1258 など) に変換することが含まれていました。ただし、このアプローチには制限があります。

更新されたソリューション

実際には、PHP ファイルシステム関数は、システムのアクティブなコード ページ内の文字のみを処理できます。したがって、考えられる解決策は 2 つあります。

オプション 1:

  • ファイル名の文字をシステムのコード ページ (例: この場合は CP437) に制限します
  • このオプションは、ベトナム語文字の使用を制限します。

オプション 2:

  • システムのコード ページをベトナム語に変更します (例: CP1258) )
  • ファイル名を新しいコード ページに変換します (例: $fn2 = iconv("UTF-8","cp1258", $base_dir.$fn);)
  • このオプションもファイル名文字をベトナム語コード ページ 1258 に制限します。

両方のオプションの欠点:

  • オプション 1:特定のベトナム語文字を使用します
  • オプション 2: システム コード ページを変更する要件とファイル名文字の制限

システム コード ページの変更に関する追加情報

システムのコード ページを変更するには:

  1. コントロール パネル > に移動します。地域
  2. 「管理」タブを選択します
  3. 「非 Unicode プログラムの言語」で、「システム ロケールの変更」ボタンをクリックします
  4. 「ベトナム語(ベトナム)」を選択しますドロップダウンメニューから

以上がWindows 上の PHP で UTF-8 ファイル名を処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート