Facebook как граф

Поскольку Facebook изменил свой API и устарел старый, мне нужно получить данные (количество лайков, количество публикаций, количество комментариев) об отдельных страницах.

Я выяснил, как получить данные по графику Facebook (пример ссылки):

https://graph.facebook.com/?fields=og_object{likes.limit(0).summary(true)},share&ids=http://www.businessinsider.com/airlines-dont-disclose-carrier-fee-that-inflates-ticket-prices-2016-9

Но сейчас я не знаю, как отобразить отдельные данные (лайки) в php. Я пытался с JSON, но не удалось:

$json = file_get_contents($xml);
$json_output = json_decode($json);

Любые предложения, как сделать эту работу?

0

Решение

API Explorer добавляет токен доступа автоматически, но вы должны добавить его вручную в свой URL:

https://graph.facebook.com/?fields=og_object{likes.limit(0).summary(true)},share&ids=http://www.businessinsider.com/airlines-dont-disclose-carrier-fee-that-inflates-ticket-prices-2016-9&access_token=xxx

Результат:

{
"http://www.businessinsider.com/airlines-dont-disclose-carrier-fee-that-inflates-ticket-prices-2016-9": {
"og_object": {
"likes": {
"data": [
],
"summary": {
"total_count": 0,
"can_like": true,
"has_liked": false
}
},
"id": "949055545223224"},
"share": {
"comment_count": 0,
"share_count": 346
},
"id": "http://www.businessinsider.com/airlines-dont-disclose-carrier-fee-that-inflates-ticket-prices-2016-9"}
}
1

Другие решения

Результаты json_decode () являются объектами.
Таким образом, вы можете легко просматривать, как это:

<?php

$url = 'https://graph.facebook.com/?fields=og_object{likes.limit(0).summary(true)},share&ids=http://www.businessinsider.com/airlines-dont-disclose-carrier-fee-that-inflates-ticket-prices-2016-9';

$json = file_get_contents($url);
$json_output = json_decode($json);
foreach( $json_output as $site=>$data ){
echo $site."\n";
echo $data->og_object->likes->summary->total_count;
}

?>
0

По вопросам рекламы [email protected]