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>";
}

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

※P.S:無料メルマガで発信中:過去の僕は「ブログ発信で5億円」を稼ぎました。次は「30億円」を目指します。挑戦しつつ、裏側の思考を「メルマガ」から発信します。不満足なら1秒で解約できます。無料登録は「こちら」です。