Ich bin neu in PHP und der Facebook PHP SDK und ich suche die 'like_count'
aus der 'likes'
'summary'
eines Facebook-Seitenbeitrags . Mein aktueller Code enthält folgende Komponenten:Getting 'total_count' von Page Post Likes 'Zusammenfassung' - Facebook PHP SDK (GESCHLOSSEN)
$response = $fb->get('/me/posts?fields=admin_creator,likes.limit(0).summary(true)&limit=30');
$getLikeCount = $response->getGraphEdge()->asArray();
foreach($getLikeCount as $likekey){
if(isset($likekey['likes'])){
var_export($likekey['likes']);
foreach ($likekey['likes'] as $likekey){
//echo $likekey['total_count'] . '<br>';
}
}
}
Die var_export($likekey['likes']);
Exporte leere Arrays während var_export($likekey['summary']);
NULL zurück. Doch in der Graph API Explorer, es gibt die folgende:
{
"admin_creator": {
"name": "NAME",
"id": "ID"
},
"id": "ID",
"likes": {
"data": [
],
"summary": {
"total_count": 1022,
"can_like": true,
"has_liked": false
}
}
},
Wie kann ich das 'total_count'
Feld zugreifen, da sie durch meine Methoden der 'likes'
Zugriff und "summary'
funktionieren nicht.
BEARBEITEN: Verwenden getGraphEdge()->asArray();
wird nicht funktionieren, da es das Übersichtsarray nicht zurückgibt. Ich müsste irgendwie die Werte von getDecodedBody();
oder eine andere Methode bekommen. Wenn ich $getLikeCount = $response->getDecodedBody();
verwenden, mit diesem Code:
foreach($getLikeCount as $key){
if(isset($key['admin_creator'])){
echo $key['admin_creator']['name'];
}
}
Es gibt nichts zurück. Ich benutze 'admin_creator'
als ein Beispiel, weil es funktioniert, wenn $getLikeCount = $response->getGraphEdge()->asArray();
und funktioniert nicht in meiner aktuellen Methode, aber ich kann diese Methode nicht verwenden, weil ich versuche, das 'total_count'
Feld aus der 'summary'
von 'likes'
und die 'summary'
nicht in der Array bei Verwendung der getGraphEdge()
Methode und zeigt nur bei Verwendung getDecodedBody();
. Ich frage mich, ob es eine Möglichkeit gibt, die Werte von getDecodedBody()
oder wenn es eine Problemumgehung gibt, um das total_count
-Feld von summary
zu erhalten.
ANTWORT: Antwort kann unten gefunden werden.
Ich bearbeitet die Frage ein wenig. Das Problem scheint zu sein, dass 'getGraphEdge() -> asArray();' das Array 'summary' nicht zurückgibt. – Jack