Frage

Ich habe den folgenden Code

$taggable = (new FacebookRequest(
$session,
'GET',
'/me/friends'
))->execute()->getGraphObject()->asArray();

echo '<pre>' . print_r( $taggable, 1) . '</pre>';

Ich versuche, die ID der Liste der Freunde zu ermitteln, die die App ebenfalls verwenden, damit der Benutzer das Foto mit diesen Freunden markieren kann.Im Moment druckt der Code die Freunde aus, die auch die App nutzen, ihren Namen und ihre ID.Ich möchte, dass die ID eines Freundes in die Parameter von „Tags“ eingefügt wird. getProperty('id') funktioniert jedoch nicht und gibt mir eine Fehlermeldung.Ich bin neu in der Facebook-API und daher mit der Syntax nicht vertraut.

Wie erhalte ich die ID des Freundes, bei dem ich mich anmelden möchte:

 'tags' => '[{\'tag_uid\': \'testing\'}]',

Danke

War es hilfreich?

Lösung

Sobald Sie den API-Aufruf durchgeführt haben, erhalten Sie eine Liste mit Freunden wie:

{
  "data": [
    {
      "name": "aaa", 
      "id": "111"
    }, 
    {
      "name": "bbb", 
      "id": "222"
    }, 
    {
      "name": "ccc", 
      "id": "333"
    },
    ...
  ]
}

Angenommen, Sie möchten die erste Person markieren, können Sie die ID folgendermaßen erhalten:

$id = $taggable['data'][0]->id;

Dies wird eingestellt $id als 111.

Anschließend können Sie die API wie folgt aufrufen, um das Foto mit Tags zu versehen:

// set tags object (user_id, and position)
$tags = array( array( 'tag_uid' => $id, 'x' => 0, 'y' => 0 ) );

// call api, with json_encoded $tags
$tag = (new FacebookRequest( $session, 'POST', '/{photo_id}/tags', array( 'tags' => json_encode( $tags ) ) ))->execute()->getGraphObject()->asArray();

// output result
echo '<pre>' . print_r( $tag, 1 ) . '</pre>';
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top