【发布时间】:2010-05-23 01:04:41
【问题描述】:
我正在使用 PHP5 和 CodeIgniter,我正在尝试使用 facebook 实现单点登录功能(尽管我不 认为 facebook 与该问题相关)。我是 PHP 的新手,而且肯定是 CodeIgniter 的新手,所以如果你认为我的方法完全不适合告诉我,那也会有帮助。
简而言之,这就是我正在做的事情:
//Controller 1
$this->load->plugin("facebook");
$facebook = new Facebook(array (
'appId' => $fbconfig['appid'],
'secret' => $fbconfig['secret'],
'cookie' => true,
)
);
$fbsession = $facebook->getSession(); //works fine
$this->session->set_userdata('facebook', serialize($facebook);
现在我想在不同的控制器中抓取该 facebook 对象。
//Controller 2
$facebook = unserialize($this->session->userdata('facebook'));
$fbsession = $facebook->getSession();
产生错误:调用未定义的方法 getSession。所以我查找了更多关于序列化的信息,并认为它可能只是不知道 facebook 对象的属性是什么。
所以我添加了一个
$this->load->plugin('facebook');
对于控制器 2,我也收到“无法重新声明类 facebook”。我强烈怀疑我在这里误解了会议。我是否必须以某种方式告诉 PHP 它是什么类型的对象?感谢您的帮助。
【问题讨论】:
标签: php facebook codeigniter session