PHP session创建机制详解,PHP session是基于cookie的(一般是,如果客户端不支持cookie,则使用url query方式)。

PHP创建session代码:

<?php
session_start();

$_SESSION['name'] = 'value';

?>

,用浏览器访问此文件,会生成一个Set-Cookie的http响应头,在客户端设置一个名字为“PHPSESSID” 的cookie.

如图:

 

打开F12的“应用”,查看已存在的cookie,则看到刚才已设置的cookie.

 

再次刷新此php文件。

可以看到响应头中已经没有了Set-Cookie头,

此时,因为cookie中已经存在PHPSESSID的cookie.则后续将使用已经存在的PHPSESSID cookie.

也就是说,session将在用户初次访问页面时,创建一个PHPSESSID的cookie,此后将不会再创建此cookie,直到session过期(一般20分钟)或删除了此PHPSESSID cookie.

 

PHP session创建过程,详解基于cookie的session机制
标签: