0

我一直在 codeigniter 中体验会话,但由于有时我需要在不使用控制器的情况下注册会话,所以我遇到了一些失败。例如,当 facebook 用户使用 FACEBOOK SDK 在我的应用程序中登录时,此插件使用正常的 php 会话,因此当我尝试在 codeigniter 控制器中获取它们时我失败了;另一方面,当我在控制器中注册会话时,我需要在其他控制器中调用相同的会话或注册基本控制器。终止 codeIgniter 会话不会删除 SDK 会话和 cookie。那么如何在 CodeIgniter 中使用正常会话,以免丢失 SDK 功能。谢谢。

4

2 回答 2

2

已经可以替换 codeigniter 的会话,它称为 Native Sessions 类,您只需将文件放在它们的位置,一切都应该按预期工作。

https://github.com/appleboy/CodeIgniter-Native-Session

于 2012-09-12T19:08:02.933 回答
1

正是出于这个原因,facebook 包装器就是这样编写的。在这个包装器中管理与基类一起使用或由基类使用的数据。

在构造函数中将 CI 超全局分配给 facebook 类之后

$this->ci =& get_instance();

替换所有实例

$_SESSION

和相关信息,因为它以前会进入 $_SESSION

//Add data to the session
$this->ci->session->set_userdata();

//Remove data from the session
$this->ci->session->unset_userdata();
于 2012-09-13T14:17:54.020 回答