php中的Session对象和序列化文件

时间:2017-07-06 06:58:17

标签: php session

这是教科书中的图片:

enter image description here

它说"因为服务器存储是一个有限的资源,所以当请求完成时会释放加载到内存中的对象"

我有3个问题:

  1. 服务器磁盘上的序列化文件怎么样?当浏览器关闭时,它们会被破坏吗?

  2. 当我们说会话超时时,服务器内存中的会话对象是否被销毁或服务器磁盘上的序列化文件是否被销毁?

  3. 每次设置Session变量时,服务器磁盘上的序列化文件是否会自动由php更新?

1 个答案:

答案 0 :(得分:0)

  1. 默认情况下,这取决于INI配置,最明显的是session.cookie_lifetime配置值。更多信息here

    某些PHP框架(如Symfony)具有不同的会话处理,在这种情况下,您必须参考框架的文档。

  2. 同样,这取决于配置。如果您使用默认的PHP会话,则文件夹中的文件位于session.save_path

    如果您再次使用框架,请参阅其文档。会话不会在PHP内存中保留,因为在PHP请求中不共享内存。

  3. 是的,只要您在更改$_SESSION变量之前使用session_start