PHP的会话管理

时间:2016-07-05 07:56:04

标签: php cookies session-cookies

我的代码很简单:

history

当我第一次请求此页面时,HTTP请求没有cookie,那么它将响应两个'set-cookie:PHPSESSID = xxxxxx' 然后我想我可以编写这样的代码:

<?php
session_start();
session_regenerate_id();
?>

然后,无论我的HTTP请求是否为:PHPSESSID = xxxxxx,它只会响应一个'set-cookie:PHPSESSID = xxxxxx'

然而,我的解决方案非常尴尬。 任何专业的PHPer都可以告诉我,如何编写专业代码来处理HTTP请求可能带有cookie'PHPSESSID'或没有cookie'PHPSESSID'的问题。

2 个答案:

答案 0 :(得分:0)

查看session_start()

  

session_start()根据通过GET或POST请求传递的会话标识符创建会话或恢复当前会话,或通过cookie传递。

因此,当您不想要PHPSESSION - Cookie时,您需要删除session_start()

答案 1 :(得分:0)

使用setcookie(&#39; cookie_name&#39;,&#39; some_value&#39;)设置Cookie,然后使用$ _COOKIE [&#39; cookie_name&#39;]获取Cookie。检查cookie和会话的差异,以确保您的操作需要cookie:)