A very simple, easy to use PHP calendar rendering class.
- php: >=5.5.0
- ext-calendar: *
Install the latest version with:
composer require 'donatj/simplecalendar'
<?php
require '../vendor/autoload.php';
echo '<link rel="stylesheet" href="../src/css/SimpleCalendar.css" />';
$calendar = new donatj\SimpleCalendar('June 2010');
echo $calendar->render();
<?php
require '../vendor/autoload.php';
echo '<link rel="stylesheet" href="../src/css/SimpleCalendar.css" />';
$calendar = new donatj\SimpleCalendar();
$calendar->setStartOfWeek('Sunday');
$calendar->addDailyHtml('Sample Event', 'today', 'tomorrow');
$calendar->setWeekDayNames([ 'Sun', 'Mon', 'Tu', 'W', 'Th', 'F', 'Sa' ]);
$calendar->setStartOfWeek('Monday');
echo $calendar->render();
Simple Calendar
function __construct([ $calendarDate = null [, $today = null]])
- \DateTimeInterface | int | string | null
$calendarDate
- \DateTimeInterface | bool | int | string | null
$today
function setDate([ $date = null])
Sets the date for the calendar.
- \DateTimeInterface | int | string | null
$date
- DateTimeInterface or Date string parsed by strtotime for the calendar date. If null set to current timestamp.
function setCalendarClasses([ array $classes = []])
Sets the class names used in the calendar
[
'calendar' => 'SimpleCalendar',
'leading_day' => 'SCprefix',
'trailing_day' => 'SCsuffix',
'today' => 'today',
'event' => 'event',
'events' => 'events',
]
- array
$classes
- Map of element to class names used by the calendar.
function setToday([ $today = null])
Sets "today"'s date. Defaults to today.
- \DateTimeInterface | bool | string | null
$today
-null
will default to today,false
will disable the rendering of Today.
function setWeekDayNames([ array $weekDayNames = null])
- string[] | null
$weekDayNames
function addDailyHtml($html, $startDate [, $endDate = null])
Add a daily event to the calendar
- string
$html
- The raw HTML to place on the calendar for this event - \DateTimeInterface | int | string
$startDate
- Date string for when the event starts - \DateTimeInterface | int | string | null
$endDate
- Date string for when the event ends. Defaults to start date
function clearDailyHtml()
Clear all daily events for the calendar
function setStartOfWeek($offset)
Sets the first day of the week
- int | string
$offset
- Day the week starts on. ex: "Monday" or 0-6 where 0 is Sunday
function show([ $echo = true])
Returns/Outputs the Calendar
Use render()
method instead.
- bool
$echo
- Whether to echo resulting calendar
- string - HTML of the Calendar
function render()
Returns the generated Calendar
- string