gpt4 book ai didi

php - 是否有人在用户代码(非本地)中创建了类似 PHP Session 的类?

转载 作者:可可西里 更新时间:2023-11-01 12:59:26 25 4
gpt4 key购买 nike

原生的 PHP Session 功能很棒,但它最终还是一个单例。有时您需要维护多个应用程序的状态以及在已启动 session 的范围内(例如在应用程序框架中)。从技术上讲,可以在更改 session_name() 后停止/重新启动 session ,但这在大多数应用程序中是不切实际/不可能/不安全的。如果某个应用使用非磁盘适配器存储 session 数据,则使用共享的 session.save_path 也不是一种选择。

没有理由不能在用户代码中完成 native session 中的功能,那么有人这样做了吗?

更新 1: CI_Session确实是一个带有一些有用代码的用户态实现,但它与 CodeIgniter 高度耦合。

更新 2:这是一个很棒的 AP​​I:

// setup
$saveHandler = new UserlandSession_SaveHandler_Files('5;/tmp');
$sess = new UserlandSession($saveHandler);
$sess->name('PHPSESSID2');
$sess->gc_maxlifetime = 86400;
$sess->setProxy($state); // passed by ref
// usage
$sess->start(); // stored string unserialized to $state
$state['foo'] = 'bar';
$sess->write_close(); // $state serialized to storage

更新 3: I've written an implementation适用于 PHP5.3。

最佳答案

CodeIgniter 有一个 session class不使用 native PHP session 。

关于php - 是否有人在用户代码(非本地)中创建了类似 PHP Session 的类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6061499/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com