有没有人有任何php-ews的经验?我想通过php-ews添加一个新的约会到Exchange 2007日历,但我不知道如何。 php-ews的文档非常有限。有没有人在此之前做过这件事,并提供和示例? 感谢
答案 0 :(得分:6)
唉。几个星期前我经历过这个。文档很糟糕。如果您对PHP和EWS有任何疑问,请随时与我联系。
因此,假设您要为某些用户的日历创建新的日历事件,则需要首先下载James Armes的Exchange Web服务客户端:http://code.google.com/p/php-ews/source/browse/
这是一系列PHP类,可以通过PHP轻松访问Exchange服务器。
然后创建一个ExchangeWebServices对象
$ews = new ExchangeWebServices(
'server address',
'username@address',
'password'
);
从那里你可以通过在PHP中构造一个“request”对象来构造SOAP XML请求,其中对象的属性是SOAP请求的层。
$request->SendMeetingInvitations = 'SendToNone';
$request->SavedItemFolderId->DistinguishedFolderId->Id = 'calendar';
$request->Items->CalendarItem->Subject = 'this is the subject of the email';
$request->Items->CalendarItem->Start = date('c', strtotime('today'));
//making this an all day event for the heck of it
$request->Items->CalendarItem->End = date('c', strtotime('today + 1 day'));
$request->Items->CalendarItem->IsAllDayEvent = true;
$request->Items->CalendarItem->LegacyFreeBusyStatus = 'Free';
$request->Items->CalendarItem->Categories->String = $category;
$request->Items->CalendarItem->Body->BodyType = 'Text';
$request->Items->CalendarItem->Body->_ = $body;
然后将请求发送到服务器:
$response = $ews->CreateItem($request);
var_dump-ing $ response将为您提供服务器响应,并让您对XML的工作原理有所了解。
至于那些文档很少,Microsoft文档将告诉您如何设置XML请求(即,赋予哪些对象的属性)以及您可以调用XML请求的方法:{{3} (参见“操作”和“XML元素”)
希望这有帮助!如果您有任何问题,请告诉我。