donatj/simplecalendar

一个轻量级、易于使用的日历渲染库

v0.8.0 2023-11-03 04:01 UTC

README

Latest Stable Version License ci.yml

一个非常简单、易于使用的PHP日历渲染类。

要求

  • php: >=7.2
  • ext-calendar: *

安装

使用以下命令安装最新版本

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();

文档

类: \donatj\SimpleCalendar

简单日历

方法: SimpleCalendar->__construct

function __construct([ $calendarDate = null [, $today = null]])
参数
  • \DateTimeInterface | int | string | null $calendarDate
  • \DateTimeInterface | false | int | string | null $today

方法: SimpleCalendar->setDate

function setDate([ $date = null]) : void

设置日历的日期。

参数
  • \DateTimeInterface | int | string | null $date - DateTimeInterface或由strtotime解析的Date字符串作为日历日期。如果为null,则设置为当前时间戳。

抛出: \Exception

方法: SimpleCalendar->setCalendarClasses

function setCalendarClasses(array $classes) : void

设置日历中使用的类名

[  
   'calendar'     => 'SimpleCalendar',  
   'leading_day'  => 'SCprefix',  
   'trailing_day' => 'SCsuffix',  
   'today'        => 'today',  
   'event'        => 'event',  
   'events'       => 'events',  
]  
参数
  • array<string,string> $classes - 元素到日历使用的类名的映射。

方法: SimpleCalendar->setToday

function setToday([ $today = null]) : void

设置"今天"的日期。默认为今天。

参数
  • \DateTimeInterface | false | int | string | null $today - null将默认为今天,false将禁用今天渲染。

抛出: \Exception

方法: SimpleCalendar->setWeekDayNames

function setWeekDayNames([ ?array $weekDayNames = null]) : void
参数
  • string[] | null $weekDayNames

方法: SimpleCalendar->addDailyHtml

function addDailyHtml(string $html, $startDate [, $endDate = null]) : void

将每日事件添加到日历中

参数
  • string $html - 要放置在日历中的此事件的原始HTML
  • \DateTimeInterface | int | string $startDate - 事件开始日期的日期字符串
  • \DateTimeInterface | int | string | null $endDate - 事件结束日期的日期字符串。默认为开始日期

抛出: \Exception

方法: SimpleCalendar->clearDailyHtml

function clearDailyHtml() : void

清除日历中的所有每日事件

方法: SimpleCalendar->setStartOfWeek

function setStartOfWeek($offset) : void

设置一周的第一天

参数
  • int | string $offset - 周开始的天。例如:"Monday"或0-6,其中0为周日

方法: SimpleCalendar->show

function show([ bool $echo = true]) : string

返回/输出日历

已弃用

请改用render()方法。

参数
  • bool $echo - 是否输出结果日历
返回
  • string - 日历的HTML

方法: SimpleCalendar->render

function render() : string

返回生成的日历