JSONをPHPで扱う
JSONデータはjavascriptで扱うものと思ってたけど、
PHPでも使えるみたいなのでメモ。
■ソース
<?
$holidays_url = "http://www.google.com/calendar/feeds/outid3el0qkcrsuf89fltf7a4qbacgt9@import.calendar.google.com/public/full-noattendees?start-min=2013-01-01&start-max=2013-12-31&max-results=100&alt=json";
$rs = json_decode(file_get_contents($holidays_url), true);
foreach ($rs['feed']['entry'] as $val ) {
$date = $val['gd$when'][0]['startTime'];
$title = $val['title']['$t'];
$holidays[$date] = $title;
}
ksort($holidays);
var_dump($holidays);
/*出力データ
array(17) {
["2013-01-01"]=>
string(34) "元日 / Ganjitsu / New Year's Day"
["2013-01-14"]=>
string(47) "成人の日 / Seijin no hi / Coming-of-age Day"
["2013-02-11"]=>
string(66) "建国記念の日 / Kenkoku kinen no hi / National Foundation Day"
["2013-03-20"]=>
string(49) "春分の日 / Shunbun no hi / Vernal Equinox Day"
["2013-04-29"]=>
string(42) "昭和の日 / Shōwa no hi / Shōwa Day *"
["2013-05-03"]=>
string(62) "憲法記念日 / Kenpō kinenbi / Constitution Memorial Day *"
["2013-05-04"]=>
string(47) "みどりの日 / Midori no hi / Greenery Day *"
["2013-05-05"]=>
string(44) "子供の日 / Kodomo no hi / Children's Day"
["2013-05-06"]=>
string(53) "振替休日 / Furikae kyūjitsu / Substitute Holiday"
["2013-07-15"]=>
string(34) "海の日 / Umi no hi / Marine Day"
["2013-09-16"]=>
string(54) "敬老の日 / Keirō no hi / Respect for the Aged Day"
["2013-09-23"]=>
string(51) "秋分の日 / Shūbun no hi / Autumnal Equinox Day"
["2013-10-14"]=>
string(47) "体育の日 / Taiiku no hi / Health-Sports Day"
["2013-11-03"]=>
string(40) "文化の日 / Bunka no hi / Culture Day"
["2013-11-04"]=>
string(53) "振替休日 / Furikae kyūjitsu / Substitute Holiday"
["2013-11-23"]=>
string(66) "勤労感謝の日 / Kinrō kansha no hi / Labour Thanksgiving Day"
["2013-12-23"]=>
string(62) "天皇誕生日 / Tennō tanjōbi / Emperor Akihito's Birthday"
}
*/
?>
■その他
json_decodeってところでjsonデータをデコードする。
エンコードも出来る。ちょっと前にJSかPHPか覚えてないけど
出力されたJSONデータをPHPで取得する際に、どう取り扱ったら
いいんか分からず、正規表現でいる部分だけ抜き出したりしてたので
これは覚えておく。
というか今更ながらPHPだと関数が多いので一旦調べてから
書いていった方が良さそう。
関連記事
-
-
PukiWikiでバックアップのスケジュール化
PukiWikiでバックアップを取りたかった。調べたらディレクトリごと保存すれば ...
-
-
PHPバージョンの確認
PHPでバージョンの確認をする際にphpinfo()を 使って調べてたけど、バー ...
-
-
FLASHがインストールされているかどうかチェックする
以前にここでちょっとやったけど、インストールされているか どうかだけならもっと良 ...
-
-
PHPで複数のファイルをまとめてzipファイル化し、ダウンロードさせる方法
PHPで複数のファイルをまとめてzipファイル化し、ユーザーにダウンロードさせた ...
-
-
エラー管理
<? /*エラー管理*/ //画面上にエラー表示させるかどうか。0⇒非表示 ...
-
-
PHPの連想配列と正当性のチェック
ソースの解析中、こんな書き方があったのか、 と思ったのでメモ。 $List = ...
-
-
PHPでゼロパディング
予め桁数を決めておいて、桁数未満の場合は0で埋めたい場合の処理。 str_pad ...
-
-
エラー管理まとめ2
これに続いてちょっとだけつまづいた点があったのでメモ。 ■ソース //ページTO ...
-
-
Basic認証がかかっているファイルをPHPで認証突破と取得
Aというサイトにあるベーシック認証がかかっているディレクトリ内のファイルを、Bと ...
-
-
PHPで土日祝を避ける
広告物を土日祝だけ非表示にしたいと言われ、 できたらPHPで行いたかった。 調べ ...
- PREV
- AWStatsとは
- NEXT
- PHPでの$_REQUESTは色々危険