使用PHP发送西里尔电子邮件时出现问题。 我这边: 服务器IIS - 数据库MsSQL - 电子邮件服务器:Exchange 2010 /通过PHP EWS /
进行通信Reciever是UA政府拥有的公司,拥有用于接收电子邮件的特定软件。它正在使用MS Outlook /手动发送/.
我尝试发送它作为text / not html /或者我试过PHP Mailer,我也已经尝试过使用C#/所有人都没有使用这个特定的公司/在gmail或hotmail上工作正常//.
$ews = new ExchangeWebServices($server, $username, $password);
$msg = new EWSType_MessageType();
$toAddresses = array();
$toAddresses[0] = new EWSType_EmailAddressType();
$toAddresses[0]->EmailAddress =;
$toAddresses[0]->Name =;
$msg->ToRecipients = $toAddresses;
$fromAddress = new EWSType_EmailAddressType();
$fromAddress->EmailAddress =;
$fromAddress->Name =;
$msg->From = new EWSType_SingleRecipientType();
$msg->From->Mailbox = $fromAddress;
$msg->Subject = "Test";
$msg->Body = new EWSType_BodyType();
$msg->Body->BodyType = 'HTML'; //Text HTML
$msg->Body->_ = $UAText;
$msgRequest = new EWSType_CreateItemType();
$msgRequest->Items = new EWSType_NonEmptyArrayOfAllItemsType();
$msgRequest->Items->Message = $msg;
$msgRequest->MessageDisposition = 'SendAndSaveCopy';
$msgRequest->MessageDispositionSpecified = true;
$response = $ews->CreateItem($msgRequest);
var_dump($response);
谢谢,
答案 0 :(得分:0)
如果它使用普通的Outlook客户端,但不使用您的解决方案,我的第一个检查是比较两个示例电子邮件的标题(一个来自outlook,一个来自您的解决方案)。我认为使用Outlook可以正确设置内容类型,但不能使用您的解决方案。
因此,您可能希望在解决方案中将内容编码设置为UTF-8。所以我假设$ UAText中的内容是一些HTML内容。因此,您可能希望通过以下方式将该部分标记为UTF-8:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
看看它是如何运作的。
您可能希望通过以下方式直接在代码中设置编码:
$ews = new ExchangeWebServices($host, $user, $password, ExchangeWebServices::VERSION_2007_SP1);
$msg = new EWSType_MessageType();
$msg->MimeContent = new EWSType_MimeContentType();
$msg->MimeContent->_ = base64_encode("Mime-Version: 1.0\r\n"
. "From: michael@contoso.com\r\n"
. "To: amy@contoso.com\r\n"
. "Subject: nothing\r\n"
. "Date: Tue, 15 Feb 2011 22:06:21 -0000\r\n"
. "Message-ID: <{0}>\r\n"
. "X-Experimental: some value\r\n"
. "\r\n"
. "I have nothing further to say.\r\n");
$msg->MimeContent->CharacterSet = 'UTF-8';
注意:这是一个很好的starting point regarding the content-type encoding选项。您也可以查看官方Microsoft howto here。