Учебник РНР
Назад Вперёд

LIV. Функции MCAL

MCAL это Modular Calendar Access Library.

Libmcal это библиотека C для доступа к календарям. Она написана как модульная, с подключаемыми драйверами. MCAL это календарный эквивалент IMAP-модуля для mailboxes/почтовых ящиков.

При поддержке mcal, календарный поток может быть открыт почти так же, как mailbox-поток с поддержкой 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_AUGUST

  • MCAL_SEPTEMBER

  • MCAL_OCTOBER

  • MCAL_NOVEMBER

  • MCAL_DECEMBER

Большинство функций используют внутреннюю структуру событий, которая уникальна для каждого потока. Это избавляет от необходимости передавать большие объекты между функциями. Имеются удобные функции для настройки, инициализации и запрашивания значений структуры событий.

Содержание
mcal_append_event - сохраняет новое событие в MCAL-календаре
mcal_close - закрывает поток MCAL
mcal_create_calendar - создаёт новый MCAL-календарь
mcal_date_compare - сравнивает две даты
mcal_date_valid — возвращает TRUE, если данный год, месяц, день является верной датой
mcal_day_of_week — возвращает день недели для данной даты
mcal_day_of_year — возвращает день года для данной даты
mcal_days_in_month — возвращает количество дней в данном месяце
mcal_delete_calendar - удаляет MCAL-календарь
mcal_delete_event - удаляет событие из MCAL-календаря
mcal_event_add_attribute - добавляет атрибут и значение в структуру глобальных событий потока
mcal_event_init - инициализирует структуру глобальных событий потока
mcal_event_set_alarm - устанавливает напоминание/alarm структуры глобальных событий потока
mcal_event_set_category - устанавливает категорию структуры глобальных событий потока
mcal_event_set_class - устанавливает класс структуры глобальных событий потока
mcal_event_set_description - устанавливает описание структуры глобальных событий потока
mcal_event_set_end - устанавливает конечную дату и время структуры глобальных событий потока
mcal_event_set_recur_daily - устанавливает повторение структуры глобальных событий потока
mcal_event_set_recur_monthly_mday - устанавливает повторение структуры глобальных событий потока
mcal_event_set_recur_monthly_wday - устанавливает повторение структуры глобальных событий потока
mcal_event_set_recur_none - устанавливает повторение структуры глобальных событий потока
mcal_event_set_recur_weekly - устанавливает повторение структуры глобальных событий потока
mcal_event_set_recur_yearly - устанавливает повторение структуры глобальных событий потока
mcal_event_set_start - устанавливает начальную дату и время структуры глобальных событий потока
mcal_event_set_title - устанавливает заголовок/title структуры глобальных событий потока
mcal_expunge - удаляет все события, помеченные как вычёркиваемые
mcal_fetch_current_stream_event — возвращает объект, содержащий структуру событий текущего потока
mcal_fetch_event - извлекает событие из календарного потока
mcal_is_leap_year — является данный год високосным, или нет
mcal_list_alarms - возвращает список событий, имеющих включённое уведомление для данной даты/времени
mcal_list_events - возвращает список ID'ов для даты или диапазона дат
mcal_next_recurrence — возвращает следующее повторение события
mcal_open - открывает MCAL-соединение
mcal_popen - открывает постоянное MCAL-соединение
mcal_rename_calendar - переименовывает MCAL-календарь
mcal_reopen - повторно открывает MCAL-соединение
mcal_snooze - выключает уведомление о событии
mcal_store_event - модифицирует существующее событие в MCAL-календаре
mcal_time_valid — возвращает TRUE, если данный год, месяц, день является верным временем
mcal_week_of_year — возвращает номер недели для данной даты

Назад Оглавление Вперёд
mb_substr Вверх mcal_append_event