fruitad/exchange-web-services-for-php

此包已被废弃且不再维护。未建议替代包。
此包最新版本(2.0.5)的许可证信息不可用。

PHP 5交互Exchange Web Services的基本库

2.0.5 2016-02-16 16:54 UTC

This package is auto-updated.

Last update: 2019-03-26 13:31:05 UTC


README

Exchange Web Services for PHP

这是一个基本的库,用于抽象Exchange Server 2007上存在的Exchange Web Services API的一些常用操作。它主要基于通过SOAP与Exchange通信

目前仅支持基本操作(从用户的收件箱中获取所有电子邮件(包括附件)、发送电子邮件消息、获取日历事件以及利用委托支持访问多个账户),但随着时间的推移,希望可以添加更多功能。

安装

基本安装

你可以试一下,但在我的Exchange服务器上不起作用。如果在你那里不起作用,请不要惊慌,只需查看下面的“高级安装”部分。

基本安装主要是告诉ExchangeClient在Exchange服务器本身上查找SOAP文件。你可以在初始化时这样做

$exchangeclient = new ExchangeClient();
$exchangeclient->init("mailbox_username", "mailbox_password", NULL, "http://exchange.server.local/EWS/Services.wsdl");

如果对你有效,那太好了。如果不行,那么你遇到了和我一样的问题,请查看下面的高级部分。

高级安装

安装比我预期的要复杂一些,但大部分都是由于API的设置方式。

你必须做的第一件事是从你的Exchange服务器下载SOAP文件。这些文件位于这里(请确保将"exchange.server.local"替换为你的网络中Exchange服务器的地址)

http://exchange.server.local/EWS/Services.wsdl

http://exchange.server.local/EWS/messages.xsd

http://exchange.server.local/EWS/types.xsd

下载这三个文件,并将它们放在"ExchangeClient.php"文件所在的同一目录中。

最后,在文本编辑器(不要使用文字处理软件,如MS Word)中打开Services.wsdl文件,并在文件的底部,在最后的

<wsdl:service name="ExchangeServices">
	<wsdl:port name="ExchangeServicePort" binding="tns:ExchangeServiceBinding">
		<soap:address location="http://exchange.server.local/EWS/Exchange.asmx"/>
	</wsdl:port>
</wsdl:service>

</wsdl:definitions>标签之前,添加以下内容

确保将exchange.server.local替换为你的实际Exchange服务器地址。

这就完成了!你现在应该可以使用这个库了。只需在PHP脚本中包含'init.php'即可。

示例

include "init.php";

$ec = new ExchangeClient();
$ec->init("mailbox_username", "mailbox_password");
$ec->send_message("you@otherdomain.com", "Subject", "A test message");

以下代码初始化库并发送一条快速测试消息

许可证