ホームページ  >  記事  >  バックエンド開発  >  PHP の URL デコードで Unicode 文字を処理するには?

PHP の URL デコードで Unicode 文字を処理するには?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-17 15:07:02355ブラウズ

How to Handle Unicode Characters in URL Decoding for PHP?

PHP での URL デコードのトラブルシューティング

Unicode 文字を扱う場合、urldecode 関数を使用した PHP での URL デコードでは、予期しない結果が返される場合があります。 UTF-8 でエンコードされた文字を含む URL 文字列をデコードするには、urldecode と utf8_decode を組み合わせる必要があります。

例:

URL 文字列:

Ant%C3%B4nio+Carlos+Jobim

この文字列は Unicode 文字 Antônio を表します。 urldecode のみを使用してデコードしようとすると、

urldecode("Ant%C3%B4nio+Carlos+Jobim");

結果は次のようになります。

Antônio Carlos Jobim

これを修正するには、まず URL エンコードをデコードし、次に UTF-8 をデコードする必要があります。エンコード:

echo utf8_decode(urldecode("Ant%C3%B4nio+Carlos+Jobim"));

これにより、期待される文字列が正しく出力されます:

Antônio Carlos Jobim

Unicode 文字を含む URL を扱うときは、urldecode と utf8_decode の両方を使用して適切な文字列を確実に使用することが重要であることを覚えておいてください。デコード。

以上がPHP の URL デコードで Unicode 文字を処理するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。