calendar.class.php
calendar.class.php is an easy to use php class for generating a calendar display. The class outputs semantic and valid XHTML that is ready to style with your custom CSS.
Features
- Semantic and Valid XHTML output
- Use the default classes or override them with your own and style with CSS
- Display current month with today marked (default behavior)
- Display calendar with selected date marked
- Display calendar just by month/year without providing a full date
- Provide an array of dates to mark on the calendar
- Optionally link days to a page with their date appended to the designated URL
- Easily loop calendar display to output multiple months or create “year at a time” views
- Calendar output can now be localized using PHP’s setlocale() function
- Added optional CSS class for passed dates (enabled by default)
- Designate that only selected dates are linked
- Day links can now be formatted for Cruft-Free URLs
- Specify the day of the week that weeks should begin on
licensed under GPL v2.0
http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt
Use of this class for commercial/proprietary purposes is governed by the
terms of Commercial License issued exclusively by the Author.
Download
SVN Repository
http://calendar-class-php.googlecode.com/svn/trunk/
Usage
Download calendar.class.php and included it into your PHP script. Then call the constructor to create a new calendar object. Use the output method to display the calendar.
require_once('calendar.class.php'); $simple_example = new Calendar(); print($simple_example->output_calendar());
Examples
- Three Month Calendar (previous, current, next months)
- Year-at-a-time Calendar
- $date
- ISO format (YYYY-MM-DD) selected date for generating a month calendar. The date will be marked up with the class “selected” by default. Takes precedence over $year and $month arguments. Optional, default value: NULL
- $year
- Combined with $month to display the specified month of the year without designating a selected date. When supplied without $month the current year will be used. Optional, default value: NULL
- $month
- Combined with $year to display the specified month of the year without designating a selected date. When supplied without $year the current month will be used. Optional, default value: NULL
- $year
- Used to override dates set by the constructor for outputting multiple calendars from the same object. optional, default value: NULL
- $month
- Used to override dates set by the constructor for outputting multiple calendars from the same object. optional, default value: NULL
- $calendar_class
- Class name applied to the calendar table. optional, default value: calendar
- $date
- Selected date. Initialized by Constructor
- $year
- Year portion of selected date, or year value supplied to constructor. Initialized by Constructor
- $month
- Month portion of selected date, or month value supplied to constructor. Initialized by Constructor
- $day
- Day portion of selected date, empty when year and month are provided. Initialized by Constructor
- $link_days
- Link days to a URL, values: TRUE or FALSE. Default value: TRUE
- $link_to
- URL days should link to. Default value: XSS clean PHP_SELF. Initialized by Constructor
- $mark_today
- Add class to today’s date, values: TRUE or FALSE. Default value: TRUE
- $today_date_class
- Class name to apply to today’s date, default value: today
- $mark_selected
- Add class to selected date supplied to constructor, values: TRUE or FALSE. Default value: TRUE
- $mark_passed
- Add class to dates previous to today’s date (ie. passed dates), values: TRUE or FALSE. Default value: TRUE
- $passed_date_class
- Class name to apply to dates in the past, default value: passed
- $selected_date_class
- Class name to apply to selected date, default value: selected
- $highlighted_dates
- Optional array of dates in ISO format to highlight on the calendar. Default: empty
- $default_highlighted_class
- Class name to apply to highlighted dates, default value: highlighted
View more examples here
(or view the “examples” directory included in the download)
Documentation
Methods
Calendar($date, $year, $month)
Class constructor, initalizes calendar object with date values
output_calendar($year, $month, $calendar_class)
Generates the calendar based on the arguments and variables provided and outputs the calendar HTML