错误提示: Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent
原因:在session_start()之前如果有输出内容,会出错,
解决办法:在session_start()之前加上ob_start();
index.php
error_reporting(-1);
ob_start();//不加会出错,无法写入session
register_shutdown_function('close');
echo 1;
session_start();
$_SESSION['password']='mima2ddddddddddddddda2';
function close()
{
if(session_id()!=='')
@session_write_close();
}
?>
index2.Php
error_reporting(-1);
ob_start();//不加会出错,无法读取session
?
echo 1;
session_start();
echo $_SESSION['password'];
var_dump($_SESSION);
?>
本文探讨了PHP中session_start()函数引发的错误,特别是'Warning:session_start(): Cannot send session cache limiter - headers already sent'。解决方案是使用ob_start()函数确保在session_start()前没有内容输出。示例代码展示了如何正确地开启和关闭session,以及在不同文件中读取和写入session数据。
4344

被折叠的 条评论
为什么被折叠?



