Written by Manabu Bannai

GoogleスプレッドシートのデータをJSONに変換して、PHPで値を取り出す方法

PHP PROGRAMMING

Googleスプレッドシートをデータベース(JSON)にして、PHPで値を取り出す方法です。シートを更新すると、リアルタイムでデータが変更できるので、めっちゃ便利です。

まずは、Googleスプレッドシートにデータを用意してください。今回は下記のデータを使って解説します。
» 利用するデータ

スポンサードサーチ


Googleスプレッドシートのデータをウェブに公開する

%e3%82%a6%e3%82%a7%e3%83%95%e3%82%99%e3%81%ab%e5%85%ac%e9%96%8b
上記のスクショ参考にどうぞ。

GoogleスプレッドシートのデータをJSONに変換する

URLを変更するだけです。

https://spreadsheets.google.com/feeds/list/ここにシートのID/od6/public/values?alt=json

たったこれだけ。下記URLにアクセスしてみてください。すでにJSONになっています。
» JSONになったGoogleスプレッドシートのデータ

※余談
JSONが見づらいかたは、Chrome拡張機能のJSON Viewerを入れておきましょう。

JSONデータにPHPでアクセスして、値を取り出す

下記のとおり。GoogleスプレッドシートのJSONはちょい見づらいですが…。

<?php
$data = "https://spreadsheets.google.com/feeds/list/1DpcL8WCg-rq2ReKKE2H9IEe-XidkDgAno1lwusgOG7M/od6/public/values?alt=json";
$json = file_get_contents($data);
$json_decode = json_decode($json);

// jsonデータ内の『entry』部分を複数取得して、postsに格納
$posts = $json_decode->feed->entry;

// postsに格納したデータをループしつつ表示する
foreach ($posts as $post) {
	echo $post->{'gsx$国名'}->{'$t'};
	echo $post->{'gsx$物価'}->{'$t'};
	echo "<br>";
}

以上で完成。この方法だと、シートを更新すると、リアルタイムでデータが変更できるので、めっちゃ便利です。

人気記事無料あり:エンジニアの僕がおすすめするプログラミングスクール3社