ホームページ >バックエンド開発 >PHPの問題 >PHPでBOMヘッダーをクリアする方法

PHPでBOMヘッダーをクリアする方法

藏色散人
藏色散人オリジナル
2021-09-17 11:39:392931ブラウズ

php で BOM ヘッダーをクリアする方法: 1. "trim($result, "\xEF\xBB\xBF");" を使用して BOM ヘッダーを削除します; 2. "@iconv("GBK ", " UTF-8//IGNORE", $result);" メソッドを使用して BOM ヘッダーを削除します。

PHPでBOMヘッダーをクリアする方法

この記事の動作環境: Windows7 システム、PHP7.1 バージョン、Dell G3 コンピューター

BOM のクリア方法header in php?

BOM ヘッダーを削除する PHP メソッド

BOM ヘッダーは、編集者に「UTF8 でエンコードされている」ことを伝えるために UTF-8 です。そのエンコードは\xEF\xBB\xBF

ですが、PHP は設計の開始時に BOM ヘッダーの問題を考慮していなかったため、エンコードおよびデコード中に問題が発生する傾向があります。

たとえば、今日発生した問題、json_decode では、デコードされた文字列に BOM ヘッダーがある場合、json_decode は解析に失敗し、NULL を返します。 (BOM ヘッダーを自動的に検出して削除しないのはなぜでしょうか...ちょっとした不満)

これを削除するために 2 つの方法を試しました:

$result = trim($result, "\xEF\xBB\xBF");
print_r(json_decode($result, true));
exit;

もう 1 つは、より微妙なものです:

$result = @iconv("UTF-8", "GBK//IGNORE", $result);
$result = @iconv("GBK", "UTF-8//IGNORE", $result);
 
print_r(json_decode($result, true));
exit;

推奨される学習: 「PHP ビデオ チュートリアル

以上がPHPでBOMヘッダーをクリアする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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