как отобразить сначала время, а затем дату в ICS

1

Я использую ICS файл для своего приложения, показывающий правильную дату и время (например, 7 ноября 2014 г. 11:50 (IST)), но я хочу сначала отобразить время, за которым следует дата (например, 11:50 утра 7 ноября, 2014 г. (IST) ) как это сделать?

class ICS{

function __construct(){

}

function generateICS($timestamp_start, $timestamp_end, $subject, $address, $description, $event_url){

    $datestr_start = $this->dateToCal($timestamp_start);
    $datestr_end = $this->dateToCal($timestamp_end);
    $datestr_current = $this->dateToCal(date('U'));

    $esc_subject = $this->escapeString($subject);
    $esc_address = $this->escapeString($address);
    $esc_description = $this->escapeString($description);
    $esc_url = $this->escapeString($event_url);

    $uniqid = uniqid();

    $ics = <<<ICS
   BEGIN:VCALENDAR
   VERSION:2.0
   PRODID:-//hacksw/handcal//NONSGML v1.0//EN
   CALSCALE:GREGORIAN
   BEGIN:VEVENT
   DTEND:$datestr_end
   UID:$uniqid
   DTSTAMP:$datestr_current
   LOCATION:$address
   DESCRIPTION:$esc_description
   URL;VALUE=URI:$esc_url
   SUMMARY:$esc_subject
   DTSTART:$datestr_start
   END:VEVENT
   END:VCALENDAR
   ICS;
        return $ics;
   }

 function dateToCal($timestamp) {
   return gmdate('Ymd\THis', $timestamp);
 }

function escapeString($string) {
  return preg_replace('/([\,;])/','\\\$1', $string);
}

}
?>
  • 0
    Пожалуйста, опишите ваш вопрос немного больше
  • 0
    Вы уверены, что это проблема, связанная с PHP? Я ожидаю, что стандартный формат будет использовать фиксированный формат для меток времени, чтобы все программные компоненты, обменивающиеся такими данными, могли понимать, что имеется в виду. Свободный формат в стандарте не имеет особого смысла. Я ожидаю, что это зависит от уровня визуализации для форматирования обмениваемых данных, таких как настроенный пользователь.
Показать ещё 3 комментария
Теги:
icalendar

1 ответ

1
Лучший ответ

Вы смотрите не на то место. Формат даты и времени в файлах ics является фиксированным и определяется спецификацией iCalendar (см. Http://tools.ietf.org/html/rfc5545#section-3.3.5). Это приложение, которое потребляет эти файлы ics для отображения дат в любом формате, который они выбирают.

  • 0
    хорошо понял @arnaudq

Ещё вопросы

Сообщество Overcoder
Наверх
Меню