/ / FaceBook užívateľská práca názov pozície parsovanie problém [uzavretý] - json, facebook, facebook-graph-api

FaceBook užívateľ pracuje s názvom parsing problém [uzavretý] - json, facebook, facebook-graph-api

Ahoj Mám problémy, keď sa snažím získať pracovné miesto meno na facebook grafe. Čo som sa pokúsil (v json):


https://graph.facebook.com/me?access_token=ABCDEFGHIJKABCDEFGHIJKABCDEFGHIJKABCDEFGHIJK  { "Id": "123456789" "name": "me me", "práca": [ { "pozícia": { "Id": "987654321" "Name": "správca" } } ] }

Tu sa pokúšam používať "user_work_history" a zdá sa mi, že jej bolo povolené.


echo json_decode (file_get_contents ("https://graph.facebook.com/". $ useid)) -> práca-> pozícia-> meno

Čo musím urobiť na vyriešenie tohto problému?

odpovede:

1 pre odpoveď č. 1

Dobre. Stručná odpoveď je, že pracovný objekt je pole objektov, takže budete potrebovať prístup k príslušnému elementu poľa.

    echo json_decode(file_get_contents("https://graph.facebook.com/".$useid))->work[0]->position->name

Čím dlhšia odpoveď obsahuje niektoré štýly -osobne by som rozdelil tento kód na najmenej dva riadky, hlavne pre čitateľnosť, a vo všeobecnosti dám prednosť získať assoc poľa od json_decode skôr než objekt, ale ofc buď funguje. Prepíšte to (ignorujte v okamihu, keď nepoužívate PHP SDK, čo by ste pravdepodobne mali byť). Nie nevyhnutne najlepšie postupy (nemám nárok byť autoritou: p), ale imho, oveľa jednoduchšie rýchlo čítať, rozumieť, ladiť a upraviť:

$json = file_get_contents("https://graph.facebook.com/" . $user_id);
$user = json_decode($json, true);
$job_title = $user["work"][0]["position"]["name"];