您的位置:首页 > 编程语言 > PHP开发

php session_start()报错 解决办法

2011-05-20 11:35 316 查看
这段时间开始搞PHP了,第一次用SESSION,就遇到了这个问题,错误提示:

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent

于是上网找了一下,网上的高手们列出了各种解决办法,这里汇总一下:
1.php.ini中的output_buffering=off 改成output_buffering=4096
2.php.ini中的session.save_path是否设置好了
3.pgp.ini中的session.auto_start = 0 改成session.auto_start = 1
4.php代码session_start() 前面不能有输出,而且必须放在首行;在session_start()的php代码之前的任何字符都被看作headers。

所以解决方法是:

将<? session_start();.......?>放到文件首,并且<? 前面不能有任何字符
但上述4种我都没有成功,后来发现原来是我用UltraEdit-32的UTF-8另存为了一下,因为UTF-8文件头有输出,具体说明见下面,后来用新建过了一个文件把代码复制一下就好了!

包括 Unicode 签名 (BOM) 可在文档中包括字节顺序标记 (BOM)。BOM 是位于文本文件开头的 2 到 4 个字节,可将文件标识为 Unicode,如果是这样,还标识后面字节的字节顺序。由于 UTF-8 没有字节顺序,因此可以选择添加 UTF-8 BOM。对于 UTF-16 和 UTF-32,这是必需的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: