勉強したことのメモ

webプログラマが勉強したことのメモ。

JSONをPHPで扱う

      2014/07/02

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だと関数が多いので一旦調べてから

書いていった方が良さそう。

 - PHP

  関連記事

CRUDのfunction化(処理ページ)

<?php //エスケープ用htmlspecialchars functi ...

imgタグで作成したグラフをjQueryでリアルタイムに動かす

このグラフをリアルタイムプレビューさせる。 ■サンプル http://sampl ...

javascriptとPHPで正規表現を使う場合

とりあえず使いそうなのは検索と置換。 ■javascript var str = ...

URLのクエリを取得

<? /* 通常であれば$_GETとかで取得するが、 http://tes ...

PHPで配列かどうかを調べる

配列か否かを調べたいケースがあり、確認すると ばっちりそのままの関数発見。 is ...

PHPで簡単にCSVファイルの生成

簡単にデータ並べるだけのCSVファイル生成。 file_put_contensで ...

GoogleアナリティクスのデータをPHPで取得する方法

Googleアナリティクスの特定データをPHPで取得して、表示なりCSV化してほ ...

DTIのVPSにCodeigniterを導入する方法

DTIのVPSにPHPフレームワークのCodeigniterをインストールした。 ...

お名前.comの共用サーバー(SD)でのphp設定

画像のアップロードフォームを作っていて、そういえば最大ファイルサイズは? と思っ ...

PHPでユニークな文字列の作成

PHPでユニークな文字列を作成したかった。MySQLとかのオートインクリメントの ...