フリーランス 技術調査ブログ

フリーランス/エンジニア Ruby Python Nodejs Vuejs React Dockerなどの調査技術調査の備忘録

PHPでFacebookのGraphApiを利用してInstagramの情報を表示する

はじめに

PHPの実装

<?php 
$instagram_business_id = '<Instagramで発行されるビジネスIDを指定する>'; 
$access_token = '<有効期限無期限のアクセストークン>';  
$get_count = 10;
$query = 'media.limit(' . $get_count. '){caption,media_url,permalink,timestamp}';
$get_url = 'https://graph.facebook.com/v8.0/' . $instagram_business_id . '?fields=' . $query . '&access_token=' . $access_token;
 
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $get_url);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($curl);
curl_close($curl);
 
if($response){
  $instagrams = json_decode($response);
  if(isset($instagrams->error)){
    print("No-Date");      
  }
  print "<table width=\"600\"><tr>";
  foreach($instagrams->media->data as $instagram){
      // 画像の場合
      if ( strpos( $instagram->media_url, "mp4" ) === false ) {
        print("<td><a href=\"" . $instagram->permalink ."\"><img src=\"" . $instagram->media_url. "\">".explode("#", $instagram->caption)[0]."</a></td>");
      // 動画の場合        
      } else {
        print("<td><a href=\"" . $instagram->permalink ."\"><video src=\"" . $instagram->media_url. "\"></video>". $instagram->caption ."</a></td>");  
      }
  }
  print "</tr></table>";
}

 実行結果

  • おみせできませんが、最新3件を表示できました。 f:id:PX-WING:20201106231618p:plain