3

Facebookのファンページから写真のサムネイルを表示しようとしています。私はFacebookの開発者とグラフのAPIを研究しました。現在、phpを使用してプロセスを自動化し、写真ページに画像を表示しようとしています。

$facebook_album = file_get_contents("https://graph.facebook.com/10150101465621686/photos");

これは、各画像に対して繰り返される画像データとともに次のデータを返します(以下を参照)。

{
   "data": [
      {
         "id": "10150101465701686",
         "from": {
            "name": "Lingua Language Academy",
            "category": "Organization",
            "id": "55206251685"
         },
         "picture": "http://photos-d.ak.fbcdn.net/hphotos-ak-ash4/185883_10150101465701686_55206251685_6497497_7724100_s.jpg",
         "source": "http://a4.sphotos.ak.fbcdn.net/hphotos-ak-ash4/185883_10150101465701686_55206251685_6497497_7724100_n.jpg",
         "height": 540,
         "width": 720,
         "images": [
            {
               "height": 540,
               "width": 720,
               "source": "http://a4.sphotos.ak.fbcdn.net/hphotos-ak-ash4/185883_10150101465701686_55206251685_6497497_7724100_n.jpg"
            },
            {
               "height": 135,
               "width": 180,
               "source": "http://photos-d.ak.fbcdn.net/hphotos-ak-ash4/185883_10150101465701686_55206251685_6497497_7724100_a.jpg"
            },
            {
               "height": 97,
               "width": 130,
               "source": "http://photos-d.ak.fbcdn.net/hphotos-ak-ash4/185883_10150101465701686_55206251685_6497497_7724100_s.jpg"
            },
            {
               "height": 56,
               "width": 75,
               "source": "http://photos-d.ak.fbcdn.net/hphotos-ak-ash4/185883_10150101465701686_55206251685_6497497_7724100_t.jpg"
            }
         ],
         "link": "http://www.facebook.com/photo.php?pid=6497497&id=55206251685",
         "icon": "http://static.ak.fbcdn.net/rsrc.php/v1/yz/r/StEh3RhPvjk.gif",
         "created_time": "2011-02-22T02:41:02+0000",
         "position": 1,
         "updated_time": "2011-02-22T02:41:04+0000"
      },

私の質問は...ループしやすい配列に次の情報を入れる簡単な方法はありますか?

データをループし、画像の値を画像srcに配置するようなものです。

foreach( $facebook_album as $key => $value){
    echo "<img src='picture'/><br />";
}
4

3 に答える 3

4

jsonデータのjson_decodeを試してみませんか?

http://php.net/manual/en/function.json-decode.php

$ dataArr = json_decode($ dataStr、true);

$ imageArr = $ dataArr ["images"];

于 2011-02-22T05:47:04.710 に答える
1

これは私にとってはうまくいったようです

$dataArr = json_decode($facebook_album,true);
foreach($dataArr['data'] as $d){    
    echo "<img src=\"".$d['source']."\"><br>";
}
于 2012-08-09T07:53:47.517 に答える
0

次のコードを使用します(php sdk)

if($user_id){
            // We have a user ID, so probably a logged in user.
            // If not, we'll get an exception, which we handle below.
            try{
                $user_profile = $facebook->api('/me','GET');
                $photos = $facebook->api("/me/photos");

......
...
..
}

写真を1枚ずつ表示し始める

foreach($photos['data'] as $photo){
                    echo "<p><img src='";
                    echo $photo['images'][0]['source'];
                    echo "'/></p>";
                }
于 2014-05-19T17:44:53.060 に答える