2013-05-04 109 views
1

这是我在这里的第一篇文章。使用PHP获取Facebook好友状态?

我使用PHP来获取Facebook朋友的状态。特别是,我试图从我的一个Facebook朋友中检索所有公共状态,但它只发生前100个状态。我需要获取所有状态并将其写入文本文件。这是我正在使用的代码,从我在这里阅读的许多答案中修补。

$i=0; 
$result = $facebook->api('/my_friend_ID/statuses/', 
array('access_token' => $facebook->access_token,'limit'=>100,)); 

//“抵消” => 50,限制之前使用,它由50挑战极限前进,它并没有超越它 //“因为” => 2010年,我读了所以有甚至是这个领域,但我不能让它工作。

foreach($result['data'] as $post) 
{ 
    echo $i . '<br>'; 
    echo $post['id'] . '<br>'; 
    echo $post['from']['name'] . '<br>'; 
    echo $post['from']['id'] . '<br>'; 
    echo $post['name'] . '<br>'; 
    echo $post['message'] . '<br>'; 
    echo '*---------------------------------------------------*' . '<br>'; 
    $i++; 
    $write_file = fopen("esempio.txt","a"); 
    $message = $post['message'] . '<br>'; 
    fwrite($write_file,$message); 
    fclose($write_file); 

} 

所以,要更清楚,如何让所有的朋友状态(新旧)在一个文本文件?

回答

0

您需要通过所有状态

foreach($the_statuses['data'] as $post) 
{ 
    echo $i . '<br>'; 
    echo $post['id'] . '<br>'; 
    echo $post['from']['name'] . '<br>'; 
    echo $post['from']['id'] . '<br>'; 
    echo $post['name'] . '<br>'; 
    echo $post['message'] . '<br>'; 
    echo '*---------------------------------------------------*' . '<br>'; 
    $i++; 
    $write_file = fopen("esempio.txt","a"); 
    $message = $post['message'] . '<br>'; 
    fwrite($write_file,$message); 
    fclose($write_file); 

} 
+0

谢谢phwd.I尝试使用分页https://developers.facebook.com/docs/reference/api/pagination/

$the_statuses = array(); $your_statuses = $facebook->api("/my_friend_ID/statuses/"); while ($your_statuses['data']) { $the_statuses = array_merge($the_statuses, $your_statuses['data']); $paging = $your_statuses['paging']; $next = $paging['next']; $query = parse_url($next, PHP_URL_QUERY); parse_str($query, $par); $your_statuses = $facebook->api( "/my_friend_ID/statuses/", 'GET', array( 'limit' => $par['limit'], 'until' => $par['until'])); } 

然后,你可以做循环,但它不工作。我改变my_friend_ID与我的朋友的实际ID,但它不显示任何结果。我在哪里得到错误? – 2013-05-05 07:34:06