实现跨脚本共享数据,用户登录验证

2.session机制

建立在cookie之上,sessionID是保存在cookie中,session本身是指将数据保存到文件,然后在其他脚本中从文件中读取数据。

php入库php实现session入库操作例子 Vue.js

通过sessionID来识别不同的文件。

1)将变量内容保存到文件中,只要开启session在脚本结束时,系统会自动处理

2)通过sessionID从文件中获取对应的内容,放到$_SESSION

3.效率

当session文件增加之后,会导致操作系统查找session文件的效率变低。
可以通过session分层来实现相对高效率的查找。

项目上session的利用:将session保存到内存中(非关系型数据库中:效率高,而且能够过期自动打消)

session存放到关系型数据库:mysql

session实行事理:PHP供应了一套session运行的系统,系统中供应了一系列的函数或者方法来逐个实现功能。

要实现session入库,实在只要修正session系统中的读和写方法,在读的时候不再从文件中去找,而是 去指定的数据库表中查找数据,写的时候不再写入文件,而是写入到数据库表中。

session_set_save_handler():将自定义的session函数写入到session系统中(更换原有的对应的session函数的功能)

bool session_set_save_handler ( callable $open , callable $close , callable $read , callable $write , callable $destroy , callable $gc )

$open:开启函数,用来初始换连接信息

$close:关闭函数,开释连接资源

$read:读取函数,从数据库读取内容

$write:写入函数,将数据写入到数据库

$destroy:销毁函数,把数据从数据库删除

$gc:垃圾回收函数,将过期的session数据删除掉

如果希望修正后的session函数实行,须要奉告session系统,session被启用。

session_start():关照session系统,脚本须要实行session

效果