勉強したことのメモ

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

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

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

 - 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で行いたかった。 調べ ...