我发送的活动日期为20131101T130000Z和20131101T150000Z至outlook,但活动时间为10:00:00 - 12:00:00。
我尝试在脚本中添加时区,但不能。 时区是America / Fortaleza,距格林威治标准时间不到3小时。
另一个错误。这是一个不发送到事件的描述,它被设置并包含变量$ subject
中的信息
public static function enviaReuniao($dtstart,$dtend,$loc,$summary,$from,$to,$subject, $project) { $vcal = "BEGIN:VCALENDAR\r\n"; $vcal .= "VERSION:2.0\r\n"; $vcal .= "PRODID:-//Esmaltec\r\n"; $vcal .= "METHOD:REQUEST\r\n"; $vcal .= "BEGIN:VEVENT\r\n"; $vcal .= "ATTENDEE;CN=\"Sistemas 3\";ROLE=REQ-PARTICIPANT;RSVP=TRUE:MAILTO:leandror@intranet.esmaltec.com.br\r\n"; $vcal .= "ATTENDEE;CN=\"Leandro Pedrosa\";ROLE=REQ-PARTICIPANT;RSVP=TRUE:MAILTO:leandror@intranet.esmaltec.com.br\r\n"; $vcal .= "UID:".date('Ymd').'T'.date('His')."-".rand()."-esmaltec.com.br\r\n"; $vcal .= "DTSTAMP:".date('Ymd').'T'.date('His')."\r\n"; $vcal .= "DTSTART:$dtstart\r\n"; $vcal .= "DTEND:$dtend\r\n"; if ($loc != "") $vcal .= "LOCATION:$loc\r\n"; $vcal .= "SUMMARY:$summary\r\n"; $vcal .= "ORGANIZER; CN=\"EPROJ - $project\":mailto:leandror@intranet.esmaltec.com.br\n"; $vcal .= "SEQUENCE:0\r\n"; $vcal .= "BEGIN:VALARM\r\n"; $vcal .= "TRIGGER:-PT15M\r\n"; $vcal .= "ACTION:DISPLAY\r\n"; $vcal .= "DESCRIPTION:$subject\r\n"; $vcal .= "END:VALARM\r\n"; $vcal .= "END:VEVENT\r\n"; $vcal .= "END:VCALENDAR\r\n";//echo $vcal; //iso-8859-1 $headers = "From: $from\r\nReply-To: $from"; $headers .= "\r\nMIME-version: 1.0\r\nContent-Type: text/calendar; method=REQUEST; charset=\"utf-8\""; $headers .= "\r\nContent-Transfer-Encoding: 7bit\r\nX-Mailer: Microsoft Office Outlook 12.0"; if(mail($to, $summary, $vcal, $headers)) { return true; } else { return false; } }
The example:
enviaReuniao ("20131101T130000Z", "20131101T150000Z", "Location", "Title", "example@example.com", "example1@example.com", "Description", "Project 1");
答案 0 :(得分:0)
如果您使用的是20131101T130000Z格式,则所有时间均以GMT / UTC表示。鉴于America / Fortaleza是UTC-3h(http://www.timeanddate.com/worldclock/timezone.html?n=491),预计此事件应该在10:00出现。所以你看到的是正常的。
就DESCRIPTION问题而言,此属性可以同时出现在VEVENT和VALARM中(请参阅http://tools.ietf.org/html/rfc5545#section-3.8.1.5)。在您的示例中,它仅在VALARM组件中添加(它仅用于提醒)。所以你应该把它添加到VEVENT本身,例如在摘要之后。