ホームページ > バックエンド開発 > PHPチュートリアル > Web ページ UTF8 エンコーディングの空白の問題 開発_PHP チュートリアル

Web ページ UTF8 エンコーディングの空白の問題 開発_PHP チュートリアル

WBOY
リリース: 2016-07-13 17:37:36
オリジナル
1016 人が閲覧しました

開発中に解決できなかった問題
ページは UTF8 でエンコードされており、ヘッダーと末尾はテンプレートに含まれています。その結果、先頭と末尾に理由もなく 10px ほどの余分な空白行が発生し、何もありません。
その理由は、ファイルがインクルードされると、最終的なバイナリ ストリームに複数の UTF8 BOM タグが含まれるため、通常は複数の UTF8 BOM タグを含むページを解析できず、実際に表示される改行に直接置き換えられるためです。空行が表示されますが、Firefox ではこの問題は発生しません。
したがって、テンプレートが包含メソッドを使用して複数の utf8 ファイルを含み、ultraedit で保存する必要がある場合は、名前を付けて保存機能を選択し、BOM 形式なしで utf8 で保存します。
さらに、中国語ページが HTML head タグの したがって、utf8 ページは標準の順序を使用する必要があります






<メタ名=”評価” コンテンツ=”一般” />



BOM ヘッダー: xEFxBBxBF、PHP4 および 5 は依然として BOM を無視するため、解析する前に直接出力されます。
この問題については、w3.org の標準 FAQ に専用の説明があります:
http://www.w3.org/International/questions/qa-utf8-bom
詳細は以下の通りです
UCSエンコーディングには「ZERO WIDTH NO-BREAK SPACE」という文字があり、そのエンコーディングはFEFFです。 FFFE は UCS には存在しない文字ですので、実際の送信では出現しないはずです。 UCS 仕様では、バイト ストリームを送信する前に文字「ZERO WIDTH NO-BREAK SPACE」を送信することを推奨しています。このように、受信機が FEFF を受信した場合は、バイト ストリームがビッグ エンディアンであることを示し、FFFE を受信した場合は、バイト ストリームがリトル エンディアンであることを示します。したがって、「ZERO WIDTH NO-BREAK SPACE」という文字は BOM とも呼ばれます。
UTF-8 はバイト順序を示すために BOM を必要としませんが、BOM を使用してエンコード方式を示すことができます。文字「ZERO WIDTH NO-BREAK SPACE」の UTF-8 エンコーディングは EF BB BF です。したがって、受信側が EF BB BF で始まるバイト ストリームを受信すると、それが UTF-8 でエンコードされていることを認識します。
Windows は、BOM を使用してテキスト ファイルのエンコード方法をマークするオペレーティング システムです: WindowsXP Professional、デフォルトの文字セット: 中国語
1) メモ帳: BOM のない UTF-8 エンコード形式のファイルを自動的に識別できますが、ファイルを保存するときに BOM を追加するかどうかを制御することはできません。ファイルを保存すると、一律に BOM が追加されます。
2) editplus: BOM のない UTF-8 エンコード形式のファイルは自動的に認識できません。ファイルを保存するときに UTF-8 形式を選択すると、ファイル ヘッダーに BOM ヘッダーが書き込まれません。
3) UltraEdit: 文字エンコーディングの最も強力な機能で、保存時に BOM ありと BOM なしの utf-8 ファイルを自動的に識別できます。設定を通じて BOM を追加するかどうかを選択できます。
(新しく作成したファイルを保存するときは、utf-8 no bom 形式で保存することを選択する必要があることに注意することが重要です)
後で、Notepad ++ も utf-8 BOM をより適切にサポートしていることを発見したので、皆さんにもそれを使用することをお勧めします。

http://www.bkjia.com/PHPjc/486546.html

tru​​ehttp://www.bkjia.com/PHPjc/486546.html技術記事開発中に解決されなかった問題は、ページが UTF8 エンコーディングを使用しており、ヘッダーと末尾がテンプレート インクルード ファイルの方法を使用しているため、先頭と末尾に約 10px の余分な空白行が発生することです。理由は…
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート