XXIX. MCAL 関数

MCAL は、Modular Calendar Access Library を意味します。

Libmcal は、カレンダーアクセス用の C ライブラリです。 このライブラリは、結合性の高いドライバとして書かれています。 MCAL は、メールボックス用の IMAP モジュールのカレンダー版 です。

mcal サポート機能により、カレンダーストリームを IMAP サポート機能によるメールボックスストリームと全く同様に オープンすることができます。 カレンダーは、ローカルファイルに保存したり、リモートのICAPサーバーとしたり、 mcal ライブラリによりサポートされる他のフォーマットとすることができます。

カレンダーイベントは、発生、検索、保存することができます。 カレンダーのトリガー(アラーム)および定期的なイベントもサポートされます。

libmcal により、メインのカレンダーサーバーをアクセス、使用することが できます。この場合、特定のデータベースおよびローカルファイルに依存した プログラミングは必要ありません。

これらの関数を動作させるには、PHP を --with-mcal を付けてコンパイルする 必要があります。 この場合、mcal ライブラリがインストールされている必要があります。 最新版を http://mcal.chek.com/ から取得し、コンパイル、インストールしてください。

MCALモジュールを使用する場合に次の定数が定義されます。 MCAL_SUNDAY, MCAL_MONDAY, MCAL_TUESDAY, MCAL_WEDNESDAY, MCAL_THURSDAY, MCAL_FRIDAY, MCAL_SATURDAY, MCAL_RECUR_NONE, MCAL_RECUR_DAILY, MCAL_RECUR_WEEKLY, MCAL_RECUR_MONTHLY_MDAY, MCAL_RECUR_MONTHLY_WDAY, MCAL_RECUR_YEARLY, MCAL_JANUARY, MCAL_FEBRUARY, MCAL_MARCH, MCAL_APRIL, MCAL_MAY, MCAL_JUNE, MCAL_JULY, MCAL_AUGUGT, MCAL_SEPTEMBER, MCAL_OCTOBER, MCAL_NOVEMBER, MCAL_DECEMBER 多くの関数は、各ストリーム毎に固有の内部イベント構造体を 使用します。これにより、大きなオブジェクトを関数の間で 渡すことが容易になります。イベント構造体の値を設定、初期化、 取得する便利な関数があります。

目次
mcal_open — MCAL 接続をオープンする
mcal_close — MCAL ストリームを閉じる
mcal_fetch_event — カレンダーストリームからイベントを取得する
mcal_list_events — 指定した二つの datetime 間のイベントのリストを返す
mcal_append_event — MCALカレンダーに新規イベントを保存する
mcal_store_event — MCALカレンダーの既存のイベントを修正する
mcal_delete_event — MCAL カレンダーからイベントを削除する
mcal_snooze — イベントのアラームをオフにする
mcal_list_alarms — 指定した datetime までにアラームを発生するイベントのリストを返す
mcal_event_init — グローバルイベント構造体のストリームを初期化する
mcal_event_set_category — グローバルイベント構造体ストリームのcategoryを設定する
mcal_event_set_title — グローバルイベント構造体ストリームのtitleを設定する
mcal_event_set_description — グローバルイベント構造体ストリームの description を設定する
mcal_event_set_start — グローバルイベント構造体ストリームの開始日を設定する
mcal_event_set_end — グローバルイベント構造体ストリームの終了日を設定する
mcal_event_set_alarm — グローバルイベント構造体ストリームのアラームを設定する
mcal_event_set_class — グローバルイベント構造体ストリームのクラスを設定する
mcal_is_leap_year — 指定した年が閏年であるかどうかを返す
mcal_days_in_month — 指定した月の日数を返す
mcal_date_valid — 指定した年月日が有効な日付である場合に true を返す
mcal_time_valid — 指定した時間、分、秒が有効な時間である場合に true を返す
mcal_day_of_week — 指定した日の曜日を返す
mcal_day_of_year — 指定した日の年間積算日を返す
mcal_date_compare — 二つの日付を比較する
mcal_next_recurrence — イベントが次に発生する日を返す
mcal_event_set_recur_none — グローバルイベント構造体ストリームの反復を設定する
mcal_event_set_recur_daily — グローバルイベント構造体ストリームの反復を設定する
mcal_event_set_recur_weekly — グローバルイベント構造体ストリームの繰り返しを設定する
mcal_event_set_recur_monthly_mday — グローバルイベント構造体ストリームの繰り返しを設定する
mcal_event_set_recur_monthly_wday — グローバルイベント構造体ストリームの繰り返しを設定する
mcal_event_set_recur_yearly — グローバルイベント構造体ストリームの繰り返しを設定する
mcal_fetch_current_stream_event — 現在のイベント構造体ストリームを有するオブジェクトを返す