ホームページ  >  記事  >  バックエンド開発  >  PHP における不可視文字 65279 (utf-8 BOM ヘッダー) の問題、65279bom_PHP チュートリアル

PHP における不可視文字 65279 (utf-8 BOM ヘッダー) の問題、65279bom_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:20:45952ブラウズ

PHP、65279bomの不可視文字65279(utf-8のBOMヘッダー)の問題

今日、PHP が空白の非表示文字 65279 を出力するという問題を CSDN で発見しました。オンラインで検索したところ、出力時にファイルを UTF-8 エンコードとしてマークするために 65279 文字が PHP によって使用されていることがわかりました。その結果、クライアントは ajax を使用して戻り値を取得するときに文字列を照合できません。

php の非表示文字 65279 は次のように説明されています:

UTF-8 でエンコードされたファイルは、BOM なしと BOM の 2 つの形式に分けることができます。

BOMとは何ですか?

「EF BB BF」 この3バイトはBOMと呼ばれ、正式名称は「Byte Order Mard」です。 BOM は通常、ファイルが UTF-8 ファイルであることを示すために utf8 ファイルで使用されますが、BOM の本来の目的は utf16 で使用されることです。

PHPでUTF-8ファイルを出力するとBOMが出力されるため、PHPでUTF-8を使用するにはBOMヘッダのないUTF-8ファイルを使用する必要があります。

一般的に使用されるテキスト編集ソフトウェアは、UTF-8 ファイルを保存するさまざまな方法をサポートしているため、使用する場合は特に注意する必要があります。

例:

1. ウルトラエディットを使用する場合、保存時に「UTF-8」と「UTF-8 - BOM なし」の 2 つのオプションがあります。
2. ウィンドウのメモ帳に BOM 付きのファイルが保存されます。
3. EditPlus ソフトウェアのバージョンによって、UTF-8 保存のサポートが異なります。たとえば、バージョン 2.31 は BOM なしで保存し、バージョン 2.11 は BOM ありで保存します。

utf-8 ファイルヘッダーを削除する方法:

1. ウルトラエディットを使用してファイルとして保存し、「UTF-8 - No BOM」を選択します
2. サイトのルート ディレクトリで実行される非常に便利な PHP プログラムは、ディレクトリ内のすべての UTF-8 ファイルの BOM ヘッダーを削除します。コードは次のとおりです。

リーリー
PHPプログラムでBOMのないUTF8の問題、アドバイスをお願いします

まず、BOM は表示するデコードには影響しません...

手動でデコードすると、正常に動作します。これは、ファイルで文字列エンコーディングを指定していないためです
header("Content-type: text/html;charset=utf8"); この文を PHP ファイルの先頭に追加してください

phpファイルをutf-8でエンコードする場合、(utf-8エンコード形式)または(utf-8 no BOMエンコード形式)を使用することを選択できます

保存するときは、UTF-8 BOM フリーのエンコード形式を使用してください。


PHP が BOM ヘッダーを処理するときにエラーが発生することがあります。これは、header や session_start などの関数を使用するときにファイルが出力されたというエラーを引き起こす可能性があります。ほとんどの場合、これは BOM ヘッダーが送信されることが原因です。 。 php の観点からはスペースになるためです。したがって、BOM フリー形式を使用してください。

http://www.bkjia.com/PHPjc/864933.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/864933.html技術記事 php の不可視文字 65279 (utf-8 の BOM ヘッダー) に関する問題、65279bom 今日、CSDN で php が空白の不可視文字 65279 を出力するという問題を見つけました。オンラインで調べたところ、この 65279 文字が php で使用されていることがわかりました。 .
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。