我有一个非常愚蠢的问题(我相信):
如果我要开始2个会话,请拨打session_start()
两次,会发生什么?例如,我有一个类User
,我开始用户的会话,以及一个类Error
,我在其中启动另一个会话,因此我可以在其中存储错误和通知并将它们传递给其他页面
我可能遇到问题吗,这有效吗?
答案 0 :(得分:22)
PHP不支持多个同时进行的会话。除非现有会话被销毁(通过session_start()
),否则在请求中第二次调用session_destroy()
不会执行任何操作。
session_start()
根据通过GET或POST请求传递的会话标识符创建会话或恢复当前会话,或通过cookie传递。
答案 1 :(得分:5)
如果您检查了每个会话是否已创建会话,则可以使用不同的session_start():
if (!isset($_SESSION)) {
session_start();
}