/ / facebookユーザ作業位置の名前解析の問題[closed] - json、facebook、facebook-graph-api

FaceBookユーザーの作業位置の名前の解析の問題[closed] - json、facebook、facebook-graph-api

こんにちは私はFacebookのグラフ上で作業位置の名前を取得しようとするときに問題を抱えています。私が試したこと(json):


https://graph.facebook.com/me?access_token=ABCDEFGHIJKABCDEFGHIJKABCDEFGHIJKABCDEFGHIJK  { "id": "123456789"、 "名前": "私は私"、 "仕事":[ { "ポジション": { "id": "987654321"、 "名前": "管理者" } } ] }

ここでは、「user_work_history」を使用しようとしていますが、それはpemissionが許可されたようです。


echo json_decode(file_get_contents( "https://graph.facebook.com/"。$ useid)) - >作業 - >位置 - >名前

これを解決するために何をする必要がありますか?

回答:

回答№1は1

まあ。簡単な答えは、作業オブジェクトはオブジェクトの配列なので、適切な配列要素にアクセスする必要があります。次に示すのは、このトリックです。

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

長い答えにはいくつかのスタイルのニックが含まれています - 個人的には、コードを少なくとも2行に分解して読みやすくするために、私は一般に、オブジェクトではなくjson_decodeからassoc配列を取得する方が好きですが、どちらの方法でも動作します。これを書き直してください(PHP SDKを使用していない瞬間を無視してください)。必ずしもベストプラクティスではない(私は権威であると主張していない:p)が、imhoは、読みやすく、理解し、デバッグし、調整するのがはるかに簡単です。

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