Почему следующие startTime
и endTime
в календаре Outlook и Mac не вставляются с точным временем, как показано ниже?iCaldendar - Как PHP применит часовой пояс, начало, время окончания правильно в файле ics?
Вход:
$timezone = 'Europe/Luxembourg';
$startTime = "2016-11-03 18:00:00";
$endTime = "2016-11-03 19:00:00";
iCalender.ics:
$icalender_for_outlook_n_osx =
'BEGIN:VCALENDAR' . "\r\n" .
'VERSION:2.0'. "\r\n" .
'PRODID:-//hacksw/handcal//NONSGML v1.0//EN'.
'BEGIN:VEVENT'. "\r\n" .
'DTEND:' . date("Ymd\THis", strtotime($endTime)) . "\r\n" .
'UID:'. uniqid() . "@".$domain . "\r\n".
'DTSTAMP:'. time() . "\r\n".
'LOCATION:' . $location . "\r\n".
'DESCRIPTION:'. $uri . "\r\n" .
'URL;VALUE=URI:' . $uri . "\r\n" .
'SUMMARY:'. $subject . "\r\n" .
'DTSTART:'. date("Ymd\THis", strtotime($startTime)) . "\r\n" .
'PRIORITY:5'. "\r\n" .
'END:VEVENT'. "\r\n" .
'END:VCALENDAR'. "\r\n";
Перспективы или в Mac календарь начала и время окончания либо показывает несколько часов назад или вперед, никогда не получает значение, которое я имею встроенный. Как вы точно устанавливаете часовой пояс PHP и время начала/даты точно так же, как и при подаче заявки на ввод?
Его аргумент 'strtotime()' анализирует метку времени как европейский формат даты 'd-m-y', когда используются' -'. Возможно, его просто лучше использовать 'date_create_from_format()' – Xorifelse
, он правильно создал время: '20161106T001126Z', но когда я добавил к календарю, внутри календаря дата в порядке, но время показывает 01:11 ??? – YumYumYum
Ну, если я выполняю 'echo date (« Ymd \ THis », strtotime (« 2016-11-03 18:00:00 »)),' он дает мне «20161103T180000», что кажется более правильным, 20161106', где 06 - неправильный день, а время '001126' - 0 часов, 11 минут и 26 секунд. – Xorifelse