pep*_*epe 3 php codeigniter facebook-graph-api facebook-php-sdk
我正在使用FB PHP SDK将消息发布到用户的墙上.一旦用户通过FB进行身份验证,我就允许他们使用此帮助程序函数发布消息
function post_facebook($fb) {
$CI =& get_instance();
$CI->load->library('facebook');
$config = array(
'appId' => '123123123123',
'secret' => '567567567567'
);
$facebook = new Facebook($config);
$user_id = $facebook->getUser();
if ($user_id) {
$facebook->api('/me/feed', 'POST', array(
'message' => $fb['post_text'],
)
);
}
}
Run Code Online (Sandbox Code Playgroud)
这实际上是将帖子发送给FB,它显示在墙上.
但是在Firebug中我可以看到这个错误
<h4>A PHP Error was encountered</h4>
<p>Severity: Warning</p>
<p>Message: Missing argument 1 for Facebook::__construct(), called in /var/www/vhosts/example.com/httpdocs/system/core/Loader.php on line 1099 and defined</p>
<p>Filename: libraries/Facebook.php</p>
<p>Line Number: 36</p>
</div><div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;">
<h4>A PHP Error was encountered</h4>
<p>Severity: Notice</p>
<p>Message: Undefined variable: config</p>
<p>Filename: libraries/Facebook.php</p>
<p>Line Number: 40</p>
</div>
Run Code Online (Sandbox Code Playgroud)
知道我做错了什么吗?
您看到的错误来自于调用$this->load->library('facebook'),您应该将$ config数组作为参数传递给它并从CI对象访问库,如下所示:
$config = array(
'appId' => '123123123123',
'secret' => '567567567567'
);
$CI->load->library('facebook', $config);
$user_id = $CI->facebook->getUser();
Run Code Online (Sandbox Code Playgroud)
在这里阅读有关装载机的更多信
http://codeigniter.com/user_guide/libraries/loader.html