我想要通过 Facebook API-PHP 列出的 facebook 消息列表。我用php写了一个代码,我写了代码;
// Facebook App Connection
$facebook = new Facebook(array(
'appId' => 'xxxxxxxxxxxx',
'secret' => 'xxxxxxxxxxxxxxxxxxxxxxxxx',
));
$user = $facebook->getUser();
if($user) {
try
{
$params = array(
'fields' => 'inbox',
);
$user_profile = $facebook->api('/me',$params);
}
catch (FacebookApiException $e)
{
error_log($e);
$user = null;
}
}
print_r($user_profile);
/* Output:
Array
(
[id] => xxxxxxxxxx
[inbox] => Array
(
[data] => Array
(
[0] => Array
(
[id] => xxxxxxxxxxxxxx
[to] => Array
(
[data] => Array
(
[0] => Array
(
[name] => John Doe
[id] => xxxxxxxxxx
)
[1] => Array
(
[name] => Jane Doe
[id] => xxxxxxxxxx
)
)
)
[updated_time] => 2013-01-13T21:33:34+0000
[unread] => 2
[unseen] => 1
[comments] => Array
(
[data] => Array
(
[0] => Array
(
[id] => xxxxxxxxxxxxxx_xxxx
[from] => Array
(
[name] => Jane Doe
[id] => xxxxxxxxxx
)
[message] => Hi!
[created_time] => 2013-01-13T19:15:49+0000
)
[1] => Array
(
[id] => xxxxxxxxxxxxxx_xxxx
[from] => Array
(
[name] => John Doe
[id] => xxxxxxxxxx
)
[message] => Hi,How are you?
[created_time] => 2013-01-13T19:15:54+0000
)
[2] => Array
(
[id] => xxxxxxxxxxxxxx_xxxx
[from] => Array
(
[name] => Jane Doe
[id] => xxxxxxxxxx
)
[message] => Fine but have a problem facebook api
[created_time] => 2013-01-13T19:16:03+0000
)
[3] => Array
(
[id] => xxxxxxxxxxxxxx_xxxx
[from] => Array
(
[name] => John Doe
[id] => xxxxxxxxxx
)
[message] => what problem?
[created_time] => 2013-01-13T19:16:25+0000
)
[4] => Array
(
[id] => xxxxxxxxxxxxxx_xxxx
[from] => Array
(
[name] => Jane Doe
[id] => xxxxxxxxxx
)
[message] => not list all messages in inbox
[created_time] => 2013-01-13T21:04:37+0000
)
[5] => Array
(
[id] => xxxxxxxxxxxxxx_xxxx
[from] => Array
(
[name] => John Doe
[id] => xxxxxxxxxx
)
[message] => I can't help
[created_time] => 2013-01-13T21:04:40+0000
)
.bla
.bla
.bla
.bla
.bla
.bla
[24] => Array
(
[id] => xxxxxxxxxxxxxx_xxxx
[from] => Array
(
[name] => John Doe
[id] => xxxxxxxxxx
)
[message] => Okey,bye
[created_time] => 2013-01-13T21:33:34+0000
)
)
[paging] => Array
(
[previous] => https://graph.facebook.com/377285305670598/comments?limit=25&since=1358112814&__paging_token=377285305670598_2394&__previous=1
[next] => https://graph.facebook.com/377285305670598/comments?limit=25&until=1358104549&__paging_token=377285305670598_2370
)
)
)
*/
我要输出;
简·多伊:嗨!
约翰·多伊:嗨,你好吗?
Jane Doe:很好,但是有问题 facebook api
John Doe:什么问题?
Jane Doe:未列出收件箱中的所有消息
John Doe:我无法帮助
John Doe:Okey,再见
我写了代码;
for($i=0; $i <= 5; $i++){
foreach($data as $a):
foreach($a[$i] as $id => $to):
foreach($to as $data):
foreach($data as $key => $value):
echo $value["name"]."=>".$value["message"];
endforeach;
endforeach;
endforeach;
endforeach;
endforeach;
echo "<br/>";
我的结果;
Jane Doe=>
John Doe=>
=>嗨!
=>嗨,你好吗?
=>很好,但是facebook api有问题
=>什么问题?
=>不列出收件箱中的所有消息
=>我忍不住
...bla
...bla
...bla
=>我忍不住
h=>h
h=>h
我想查看所有消息和发件人姓名。我尝试过了;
1- 获取下一个 url 和 file_get_content($url); - 不工作。
2- 设置限制和偏移量 - 不起作用
如何编写代码?