thinkphp怎么用指定的ID取Session数据内容?

不会程序的程序员
  • 291

tp怎么获取指定id的session

session([
    'id' => 'lia4nqcv260q435dc762mo9ag8'
]);

设置执行上面代码后报错了

session_id(): Cannot change session id when session is active

评论
阅读 343
3 个回答

通过 session 的原理,你只需要在 session 开启之前, 用你指定的这个 id 的值替换掉 请求cookie 中带入的 session_id 的值就可以了.

不过,web应用中,不应该出现这种操作啊. 这个有悖于会话的定义,在有状态的页面和服务去这个操作是很危险的.

所以 TP 的 Session 操作不支持这个操作,包括php 原生的 session 也没有提供这个操作,但是你依旧可以按照上面的方法来去达到想要的效果.

如果只是为了共享数据,那就走缓存的方案去处理, session 记录用户或者缓存 key的信息,而不是直接通过指定 session_id 来共享 session

你这是要修改 session_id()的值吗?PHP版本>=7.2?

灬倾注你的笑
  • 2
新手上路,请多包涵

tp6的话可以设置session_id

撰写回答

登录后参与交流、获取后续更新提醒

宣传栏