php会话和cookie销毁

时间:2016-01-24 10:42:01

标签: php session cookies

我是php的新手,特别是对于cookie和会话,所以如果我使用

删除会话或cookie
session_unset();
session_destroy();
//for session

setcookie("user", "", time() - 3600);
//for cookie

它会:
1)仅删除已运行上述代码的特定访问者的会话或cookie 2)或删除所有访客的所有会话或cookie

从逻辑来看,它应该是1,但我只是想确保这一点。任何解释的人都会非常感谢,谢谢。

5 个答案:

答案 0 :(得分:1)

session_start()在客户端上创建一个cookie,默认名称为PHPSESSID,ID非常独特,很难猜到。如果已经创建了cookie并且尚未过期,它也将恢复会话。

session_regenerate_id()重新生成会话ID,并将会话数据移动到由$SESSION['key'] = 'value';设置的新ID,这对于登录系统成功登录时刷新会话ID以防御{{3}是很方便的}}

session_destroy()删除存储在服务器上的该会话ID的会话数据,并请求客户端删除该cookie,但是为了保存性能,这是常规而非立即完成的。

您还可以创建命名会话,特别是启动和销毁它们,但通常不需要这样做。

如果您愿意,可以session attacks并将数据存储在数据库中。

答案 1 :(得分:0)

它特定于用户。编写一些涉及启动会话并检查浏览器的代码,您将在计算机上看到cookie。有一整个documentation section on how PHP handles sessions

答案 2 :(得分:0)

此代码将删除个人访客的会话cookie&删除服务器上的会话文件 setcookie(..)将为此访问者创建cookie。

答案 3 :(得分:0)

设置会话的正确方法是

$_SESSION['session_name'] = 'value of the session';
所有会议都将

session_destroy()

您还需要在代码的最顶部使用session_start()来启动任何内容 php会话的类型。同样适用于设置cookie和销毁cookie。

学习php的最好方法是先阅读本书然后再阅读 你可以去数字学习。我建议你不能在网上学习  你得到一本php书;通过整个事情,然后上网  写一小段代码并启动小文件作为测试床。

首先是纸张,然后是数字化;这需要一些时间,所以给自己一个项目来工作。很抱歉被带走了,但我建议你应该这样做。

答案 4 :(得分:0)

session_destroy();将删除该用户在服务器上存储的所有会话。如果您正在寻找像用户名这样的特定会话,请使用$_SESSION['username'] = $username;来创建它。然后使用session_unset('username');取消设置它注意保持会话开始位于文档的顶部。