若您在修改任何PHP檔案後發生:
無法登入或無法登出;
頁頂出現空白;
頁上錯誤警告; 則多半是編輯器的問題。
本程式採用UTF-8編碼。現在幾乎所有的文字編輯軟體都可以顯示並編輯UTF-8編碼的檔案。但很遺憾,其中許多軟體的表現並不理想。
類似WINDOWS自帶的記事本等軟體,在保存一個以UTF-8編碼的檔案時,會在檔案開始的地方插入三個不可見的字元(0xEF 0xBB 0xBF,即BOM)。它是一串隱藏的字符,用於讓記事本等編輯器識別這個檔案是否以UTF-8編碼。對於一般的文件,這樣並不會產生什麼麻煩。但對PHP來說,BOM是個大麻煩。
PHP並不會忽略BOM,所以在讀取、包含或引用這些文件時,會把BOM當作該文件開頭正文的一部分。根據嵌入式語言的特點,這串字元將會直接執行(顯示)出來。由此造成即使頁面的 top padding 設定為0,也無法讓整個網頁緊貼瀏覽器頂部,因為在html一開頭有這3個字元呢!
最大的麻煩還不是這個。受COOKIE送出機制的限制,在這些檔案開頭已經有BOM的檔案中,COOKIE無法送出(因為在COOKIE送出前PHP已經送出了檔案頭),所以登入和登出功能失效。一切都依賴COOKIE、SESSION實現的功能全部無效。
因此,在編輯、更改任何文字檔案時,請務必使用不會亂加BOM的編輯器。 Linux下的編輯器應該都沒有這個問題。 WINDOWS下,請勿使用記事本等編輯器。建議的編輯器是:
Editplus 2.12版本以上;
EmEditor;
UltraEdit(需要取消與新增BOM'的相關選項);
等。
對於已經新增了BOM的文件,要取消的話,可以用以上編輯器另存一次。 (Editplus需先另存為gb,再另存為UTF-8)
以上就介紹了免費圖像編輯軟體 PHP 程式設計請選擇正確的文字編輯軟體,包括了免費圖像編輯軟體方面的內容,希望對PHP教程有興趣的朋友有所幫助。