使用PHP发送Outlook 2010电子邮件

时间:2014-02-06 12:00:32

标签: php email outlook

我希望使用默认的Windows 7 Outlook 2010邮件帐户发送电子邮件。

我试过了:

oApp  = new COM("Outlook.Application") or die('error');
$oMsg  = $oApp ->CreateItem($oApp->OlItemType->olMailItem);
$oMsg ->Recipients->Add("xxx@xxx.com");
$oMsg ->Subject="aaaa";
$oMsg ->Body="body";
$oMsg ->Save();
$oMsg ->Send();

但我收到错误:

Outlook loaded, version 14.0.0.7109
Fatal error: Uncaught exception 'com_exception' with message 'Unable to lookup  
`OlItemType': Unknown name. ' in C:\xampp\htdocs\Intranet_IT_Request_Form
\comunread.php:5 Stack trace: #0 C:\xampp\htdocs\Intranet_IT_Request_Form
\comunread.php(5): unknown() #1 {main} thrown in C:\xampp\htdocs
\Intranet_IT_Request_Form\comunread.php on line 5

我的研究告诉我,我需要包含所有电子邮件功能的cdo.dll,但我只能在Outlook 2007中安装它;根本不实用。

有谁知道如何使用PHP发送Outlook 2010电子邮件? (我正在使用XAMPP)。

非常感谢

2 个答案:

答案 0 :(得分:0)

这有效:

if (!defined("olMailItem")) {define("olMailItem",0);}
$oApp  = new COM("Outlook.Application") or die('error');
$oMsg = $oApp->CreateItem(olMailItem);
$oMsg->Recipients->Add("xxx@xxx.org");
$oMsg->Subject=$subject;
$oMsg->Body=$message;
$oMsg->Save();
$oMsg->Send();

答案 1 :(得分:0)

对我来说,下一个代码只是开箱即用:

<?php

$ subject =&#34;这是测试消息&#34;;

$ message =&#34;这是一个Body Section现在......! :)&#34 ;;

$为=&#34; someaddress@somedomain.com" ;;

//开始展望

<强> com_load_typelib(&#34; outlook.application&#34);

if(!defined(&#34; olMailItem&#34;)){define(&#34; olMailItem&#34;,0);}

$ outlook_Obj =新COM(&#34; outlook.application&#34;)或死亡(&#34;无法启动Outlook&#34;);

//只是为了检查你是否已连接。

echo&#34;已装载的MS Outlook,版本{$ outlook_Obj-&gt;版本} \ n&#34;;

$ oMsg = $ outlook_Obj-&gt; CreateItem(olMailItem);

$ oMsg-&GT; Recipients-&gt;添加($到);

$ oMsg-&GT;主题= $主题;

$ oMsg-&GT;机体= $消息;

$ oMsg-&GT;保存();

$ oMsg-&gt;置于();

&GT;

请确保您已添加

[COM_DOT_NET]
extension=php_com_dotnet.dll

在php.ini的末尾(在我的情况下,我有PHP 5.3)