Domanda

Ho il seguente codice

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

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

Sto cercando di ottenere l'ID dell'elenco degli amici che utilizzano anche l'app, in modo che l'utente possa taggare la foto con questi amici.In questo momento il codice stampa gli amici che usano anche l'app, il loro nome e ID.Voglio ottenere l'ID di un amico per sotto i parametri dei "tag", tuttavia la GetProperty ('ID') non funziona e mi dà un errore.Sono nuovo all'API di Facebook, quindi non sono sconosciuto con la sintassi.

Come posso ottenere l'ID dell'amico per sub in:

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

Grazie

È stato utile?

Soluzione

Una volta effettuata la chiamata API, riceverai una lista di amici come:

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

Supponendo che tu voglia taggare la prima persona, puoi ottenere l'ID come:

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

Questo imposterà $id come 111.

È quindi possibile chiamare l'API per taggare la foto, come segue:

// 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>';
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top