文档库 最新最全的文档下载
当前位置:文档库 › 黑马程序员_PHP_课程同步笔记day38:PHP会话技术之session常见问题

黑马程序员_PHP_课程同步笔记day38:PHP会话技术之session常见问题

黑马程序员_PHP_课程同步笔记day38:PHP会话技术之session常见问题
黑马程序员_PHP_课程同步笔记day38:PHP会话技术之session常见问题

【黑马程序员济南】PHP会话技术之session常见问题

垃圾回收

浏览器关闭,session失效,因为session-id这个COOKIE变量消失。

是否会立即导致服务器端的session数据区文件消失吗?

不会。

判断垃圾:

PHP,将长时间没有使用的session数据区文件,视为垃圾。

最后使用的时间,与当前时间的间隔,超过了多久就没有使用,就视为长时间没有使用。

默认为:1440s,就失效了。

配置项php.ini:

删除垃圾:

在执行session_start()时。PHP就有概率地执行删除垃圾的操作。

默认的概率的为1/1000。

配置项如下:

可能性

基数:

如何持久化session

持久化,session-id和session数据区垃圾判断时间。

cookie和session的联系和区别?

联系:

session基于COOKIE。session-ID存储于COOKIE中。

区别:

Cookie Session

存储位置浏览器端服务器端

安全性低高

数据传输量全部传输(有限制)仅传输session-ID(无限制)

全部类型(除了资源)。采用序列数据类型支持仅字符串

储。

COOKIE禁用session是否可用?

没有COOKIE,就没有办法存储sessionid,因此不能用。

但是,如果仅从原理上说,是可以解决的。

就是通过get或post向服务器传参即可。每次都携带即可!

演示如下:

修改PHP的配置。可以完成session-ID的自动传输:

是否仅仅是用COOKIE传输session-ID:

是否自动在URL或者表单内增加session-ID变量:

结果:

会在链接地址后,自动的增加PHPSESSID参数

相关文档