我已将Yii应用程序会话设置为保存在数据库中。
在我的应用程序的一部分中,我需要阅读Yii创建的会话但是
我无法使用Yii::app()->session
,因为我的代码不在Yii应用程序中。
我能用PHP函数读取这个会话吗?
或
使用Yii在temp文件夹而不是数据库中创建并保存此特定会话(因此我可以轻松使用$_SESSION
)?
答案 0 :(得分:1)
您正在寻找的功能是session_set_save_handler()
。
此功能允许您覆盖$_SESSION
变量的默认处理。您可以使用它来指定一组函数来处理与会话处理相关的加载,保存和其他任务。
您可以使用这些功能从数据库或您可能需要的任何其他来源加载会话数据。
希望有所帮助。
答案 1 :(得分:1)
您可以捕获浏览器发送的cookie并使用来自cookie的会话ID从表中选择,但最有可能有更好的方法来解决您的问题。
为什么不能简单地将代码移动到Yii控制器中?即使它是特定的东西,通常也很容易解决。