in PHP

UTF-8的BOM头对PHP的SESSION的影响。

大家都知道使用PHP的session的时候,在session_start()之前,不能输入任何东西,哪怕一个空格也不行。

可以如果你是采用的UTF8编码,很有可能遇到下面这个问题,检查代码检查不出问题,在session_start()之前是没有字符输出 的,PHP错误提示在第一样有输出”Cannot send session cache limiter – headers already sent (output started at C:……………..\loggedin.php:1)”这个时候基本就可以确定是BOM头在作怪了。

BOM是供编辑器来识别编码格式用的东西。遇到这种情况的解决方法就是去掉BOM头,如果你用的 ultraedit,只需要另存为,在格式一栏选择UTF8-无BOM 格式就可以了。替换原文件后,再试试,问题就应该解决了。

这个在昨天困扰了我好久

  1. Pingback: Casino 1238872789