PHP での UTF-8 文字への Unicode エスケープ シーケンス
この質問は、「u00ed」のような Unicode エスケープ シーケンスをデコードするための解決策を提供します。 PHP の対応する UTF-8 エンコード文字。ユーザーは、同様の質問を見つけても満足のいく結果が得られなかったと述べています。
これに対処するために、回答では 2 つの preg_replace_callback 関数が提供されています。最初の関数は、UCS-2BE に基づいて Unicode エスケープ シーケンスを処理します。
$str = preg_replace_callback('/\\u([0-9a-fA-F]{4})/', function ($match) { return mb_convert_encoding(pack('H*', $match[1]), 'UTF-8', 'UCS-2BE'); }, $str);
C/C /Java/Json など、Unicode エスケープ シーケンスが UTF-16BE に基づいている場合、2 番目の関数は次のようになります。使用:
$str = preg_replace_callback('/\\u([0-9a-fA-F]{4})/', function ($match) { return mb_convert_encoding(pack('H*', $match[1]), 'UTF-8', 'UTF-16BE'); }, $str);
これらの関数を利用すると、Unicode エスケープ シーケンスを対応する UTF-8 エンコードに正常にデコードできます。文字。
以上がPHP で Unicode エスケープ シーケンスを UTF-8 文字に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。