session_start()一定要放在页面的最顶吗

2025-01-24 14:49:43
推荐回答(3个)
回答1:

并不是说session_start()必须放在第一行,而是要保证在使用它之前,没有向浏览器输出过任何内容
检查session_start()之前,是否已向浏览器输出过内容
php手册中有的If you are using cookie-based sessions, you must call session_start() before anything is outputted to the browser.
例如


php




session_start();
?>
在session_start()之前,向浏览器中输出了php,会发出一个警告

同样

session_start();
?>



zhongguo





这也是不行的,因为

session_start();
?>
前空了两行,空行也是有数据的,也不行,当然
如果前面有如:require_once("conn.php")【只要没有输出】,也是可以的,并不是非要放在第一行的……
希望可以帮助你一点……

回答2:

不一定,但之前不能有输出,所以其实还是放在顶部不容易出错,反正至少start罢了,又没做什么。

回答3:

那是必须的