ヤマムギ

growing hard days.

*

Googleカレンダーの予定をV3 APIでPHPからJSONを取得してWebページに表示する

      2016/02/08


Googleカレンダーを使って管理しているライブスケジュールを日付によって、
未来はライブ告知、過去は終わったライブとしてWebページに表示します。

Google側の設定とキー取得

下記の順番で設定します。

設定方法は様々なサイトで紹介されていますので「Google Calendar API v3」とかで検索してください。

  1. プロジェクトの作成
  2. APIの有効化
  3. クライアントID作成
  4. APIキー取得

Pear HTTPライブラリの準備

今回は共用レンタルサーバー上で実装しなければならず、HTTP RequestやHTTP Clientをインストール出来なかったので、ダウンロードしてからFTP経由で配置しています。

配置したライブラリ

  • Pear.php
  • HTTP/Request.php
  • HTTP/Client.php
  • Net/Socket.php
  • Net/URL.php

Pear ダウンロードサイトでPackage検索でそれぞれ探してダウンロードしました。

ライブラリの配置先にパスを通す

レンタルサーバーなので実行時にパスを通す必要があります。

なので、set_include_path(get_include_path() . PATH_SEPARATOR . $path);としています。
詳しくは下部をご参照ください。

カレンダーを取得して表示する

このカレンダーから取得しています。

そしてこちらに表示しています。
ライブ情報
過去のライブ

ライブ情報の例です。
※過去のライブは逆に今日より過去のスケジュールを取得しています。

パラメータはこちらのオフィシャルサイトをご覧ください。

https://developers.google.com/google-apps/calendar/v3/reference/events/list

@yamamanx
開発ベンダー5年、ユーザ企業システム部門通算9年、ITトレーナー1年目のSoftware Engineerです。 質問はコメントかSNSなどからお気軽にどうぞ。 出来る限りなるべく答えます。 このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。 また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。

 - Google, PHP , ,

ad

ad

Message

メールアドレスが公開されることはありません。

  関連記事

Chrome リモートデスクトップを使ってみる

自宅のMacをリモートで操作したい 外出用PCはWindows 8 とLinux …

Google関連のAPIを試すためのGoogleSiteを作ってみました

組み込み機能で出来る事は組み込み機能で と思いまして、Googleサイトを試験的 …

自転車でナビ+記録出来るアプリ+ホルダー+バッテリー試してみた

目的 記録を蓄積して振り返りやる気を継続する 飽きないように単調にならないように …

WordPressの記事を公開日時に関係なくソート順を変更する

PostMash Customを使う WordPressのプラグインでPostM …

ホームページやサイトがiPhone,iPadのホーム画面に追加された時のアイコンを設定しておく

headタグでapple-touch-iconを指定 [crayon-5b092 …

redmine_omniauth_googleプラグインをRedmine3.0.0で動くようにする

redmine_omniauth_googleプラグインをインストールしたところ …

RedmineにGoogleAppsアカウントでログイン出来るようにする

RedmineのログインをGoogleアカウントで出来るように[redmine_ …

chromium OS をインストールするためのUSBをMacで作る

別にChromeBookを購入するお金をけちるわけではないのですが。 chrom …

GoogleAppsScriptを使ってGmailをSpreadSheetにエクスポートする

GoogleAppsScriptを使ってGmailをSpreadSheetにエク …

PHP 共通ヘッダ、フッタの内容をページによって動的に変更する

共通ヘッダ、フッタ それぞれ必要な内容を書いたheader.php、footer …