久久精品水蜜桃av综合天堂,久久精品丝袜高跟鞋,精品国产肉丝袜久久,国产一区二区三区色噜噜,黑人video粗暴亚裔

Bo-Blog UTF-8 BOM的問題

來自站長百科
跳轉(zhuǎn)至: 導(dǎo)航、? 搜索

如果您在修改任何PHP文件後發(fā)生:

  • 不能登入或者不能登出;
  • 頁頂出現(xiàn)一條空白;
  • 頁頂出現(xiàn)錯誤警告;
  • 其它不正常的情況。

則多半是編輯器的問題。

本程序采用UTF-8編碼?,F(xiàn)在幾乎所有的文本編輯軟件都可以顯示并編輯UTF-8編碼的文件。但是很遺憾,其中很多軟件的表現(xiàn)并不理想。

類似WINDOWS自帶的記事本等軟件,在保存一個以UTF-8編碼的文件時,會在文件開始的地方插入三個不可見的字符(0xEF 0xBB 0xBF,即BOM)。它是一串隱藏的字符,用于讓記事本等編輯器識別這個文件是否以UTF-8編碼。對于一般的文件,這樣并不會產(chǎn)生什么麻煩。但對于 PHP來說,BOM是個大麻煩。

PHP并不會忽略BOM,所以在讀取、包含或者引用這些文件時,會把BOM作為該文件開頭正文的一部分。根據(jù)嵌入式語言的特點,這串字符將被直接執(zhí)行(顯示)出來。由此造成即使頁面的 top padding 設(shè)置為0,也無法讓整個網(wǎng)頁緊貼瀏覽器頂部,因為在html一開頭有這3個字符。

最大的麻煩還不是這個。受COOKIE送出機制的限制,在這些文件開頭已經(jīng)有BOM的文件中,COOKIE無法送出(因為在COOKIE送出前PHP已經(jīng)送出了文件頭),所以登入和登出功能失效。一切依賴COOKIE、SESSION實現(xiàn)的功能全部無效。

因此,在編輯、更改任何文本文件時,請務(wù)必使用不會亂加BOM的編輯器。Linux下的編輯器應(yīng)該都沒有這個問題。WINDOWS下,請勿使用記事本等編輯器。推薦的編輯器是: Editplus 2.12版本以上; EmEditor; UltraEdit(需要取消‘添加BOM’的相關(guān)選項); Dreamweaver(需要取消‘添加BOM’的相關(guān)選項)等。

對于已經(jīng)添加了BOM的文件,要取消的話,可以用以上編輯器另存一次。(Editplus需要先另存為gb,再另存為UTF-8。)不過有時候不會顯示。

Bo-Blog使用手冊導(dǎo)航

Bo-Blog安裝

Bo-Blog安裝環(huán)境 | Bo-Blog文件目錄結(jié)構(gòu) | Bo-Blog詳細(xì)安裝

Bo-Blog模板

模板的設(shè)計與制作 | 模板的安裝與移除

Bo-Blog插件

Bo-Blog插件 |插件安裝卸載 | 插件模塊的添加配置

Bo-Blog版本升級

升級注意事項 | Bo-Blog2.0.3過渡到2.1.0

Bo-Blog數(shù)據(jù)

數(shù)據(jù)庫備份 | 常用SQL語句

Bo-BlogFAQ

使用注意事項 | 安裝常見問題 | 日常使用解答 | URL的優(yōu)化問答 | UTF-8 BOM的問題

Bo-BlogF其他

關(guān)于OpenID | 關(guān)于Robots