在setcookie的時候出現下面錯誤。
Cannot modify header information - headers already sent by ....
這個錯誤非常之常見,如果在setcookie之前輸出了任何文本內容,便會有上 述錯誤提示。由於頁面頭部require了若干文件,一行行排查是很麻煩的事情, 因此,我在頁面頂部加上:
PLAIN TEXT
PHP:
ob_start();
在setcookie之前加上代碼:
PLAIN TEXT
這是為了獲取setcookie之前頁面輸出的內容。頁面運行後,顯示輸出了 一個空字符串,也就是說,setcookie之前沒有任何輸出。
PHP:
ob_get_clean();
繼而用vim打開了源文件,發覺vim有打開bomb選項,懷疑因此給代碼添加了 隱藏的字符串,關閉之:
set nobomb
問題解決。
BOM是什麼意思?
BOM是“Byte Order Mark”的縮寫,用於標記文件的編碼。並不 是所有的文本編輯工具都能識別BOM標記