如何为来自FQL Stream表的actor_id属性处理未签名的int32数据?

时间:2014-01-07 23:06:54

标签: php facebook facebook-graph-api facebook-fql

$query =  "SELECT post_id,actor_id,message FROM stream WHERE source_id = 222104997886913 LIMIT 5 "

我正在使用2种不同类型的Facebook Api电话

1. $results = $facebook -> api('/fql?query='.urlencode($query).'&access_token=XXX');

2. $results = json_decode(file_get_contents('https://graph.facebook.com/fql?query='.urlencode($query).'&access_token=XXX'));

我在两种情况下都得到了正确的数据,但在案例2中,我得到了“2.2210499788691E + 14”这种类型的演员身份。这个演员ID很好,在第一次通话中显示“222104997886913”。并在https://developers.facebook.com/docs/reference/fql/stream中描述的第二次调用中显示“unsigned int32”。

我想使用第二个api调用并获得完全准确的“222104997886913”actor id而不是“2.2210499788691E + 14”for actor_id属性。

我的主人对这个问题的建议是什么?

提前致谢。

1 个答案:

答案 0 :(得分:1)

这对你有用。试试这个 $ array = json_decode($ json,true,512,JSON_BIGINT_AS_STRING)