Time Zone
The time zone event domain object \Eluceo\iCal\Domain\Entity\TimeZone
represents a definition of a time zone.
It contains the transitions of standard and daylight saving time and defines offsets to the UTC time.
When using local time, the time zone should be defined to ensure correct local time.
#
Fixed transitionsThe easiest way to define a time zone is the automatic conversion of PHP date time zones (\DateTimeZone
) into the domain object:
use Eluceo\iCal\Domain\Entity\TimeZone;use DateTimeZone as PhpDateTimeZone;
$timeZone = TimeZone::createFromPhpDateTimeZone(new PhpDateTimeZone('Europe/Berlin'));
To avoid too much output in the generated iCal file, the lowest and the highest date can be passed:
use Eluceo\iCal\Domain\Entity\TimeZone;use DateTimeZone as PhpDateTimeZone;
$phpDateTimeZone = new PhpDateTimeZone('Europe/Berlin');$timeZone = TimeZone::createFromPhpDateTimeZone( $phpDateTimeZone, new DateTimeImmutable('2019-05-01 15:00:00', $phpDateTimeZone), new DateTimeImmutable('2020-12-24 18:00:00', $phpDateTimeZone),);
#
Recurrence rulesNot implemented yet.