renfordt / icstorm
一个用于生成 ICS 文件的 PHP 包。
1.0.0
2024-09-27 20:06 UTC
Requires
- php: ^8.2
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.52
- orchestra/testbench: ^9.0
- phpunit/phpunit: ^11
This package is auto-updated.
Last update: 2024-09-27 21:33:36 UTC
README
一个用于创建和导入包含一个或多个事件的 iCalendar/ICS 文件的包。
安装
推荐使用 Composer 安装此包。执行以下命令。这不仅会安装包,还会将其添加到您的项目的 composer.json 文件中作为依赖项。
composer require renfordt/icstorm
使用方法
创建事件
以下 PHP 代码用于创建一个新的事件。
开头的变量(title
、summary
、description
、startDate
、endDate
、classification
、transparency
和 location
)代表事件的详细信息
title
:事件的标题。summary
:事件的简要概述。description
:事件的详细信息。startDate
和endDate
:事件的开始和结束日期,是必填项。classification
:事件的可见性,表示它是否为私人或公共。transparency
:表示事件的时间是被占用还是空闲的。location
:事件的地点。
这些详细信息通过使用 compact
函数收集到一个关联数组中。然后,将此数组作为参数传递给 Event::createEvent
函数,该函数生成具有这些详细信息的事件实例。
$title = 'Test Event'; $summary = 'Test Event'; $description = 'This is a test event'; $startDate = '2024-10-15 18:15:00'; $endDate = '2024-10-15 18:45:00'; $classification = EventClassification::private; $transparency = EventTransparency::opaque; $location = 'Test Location'; $event = Event::create( compact('title', 'summary', 'description', 'startDate', 'endDate', 'classification', 'transparency', 'location'));
创建 iCalendar
要创建 iCalendar/ICS 文件,可以使用以下代码。
首先创建一个新的 Calendar 实例,并将所有必需的事件添加到其中。然后,可以使用函数生成 ICS 字符串或文件。
$calendar = new Calendar(); $calendar->addEvent($event); $ics = $calendar->generateICS(); // generates a ICS string $icsFile = $calendar->generateICSFile(); // generates a ICS file