2012-04-26 195 views
0

我现在的情况是将PHP代码连接到Microsoft Outlook以发送电子邮件?

  1. 我使用的XAMPP(本地主机)
  2. 所有传出端口被封锁(GMAIL 25465587,Hotmail服务等等等等)

我想用PHP连接到我自己的微软Outlook,所以我可以从我公司的电子邮件地址发送电子邮件。请尽可能帮忙,谢谢!

因为我连接到Microsoft Outlook发送电子邮件,我还需要配置Mercury服务器吗?

+0

是的,我同意。这是交换。我知道了,我怎么去做的? – user127886 2012-04-26 02:55:55

回答

1

你不连接到Outlook与PHP连接到邮件服务器...在这种情况下,我怀疑这将是交易所。您可以使用像SwiftMailerPHPMailerZend_Mail这样的包通过SMTP与一个帐户发送消息。因此,您可以使用您用于Outlook邮箱的相同凭据和设置......特别是:SMTP服务器(传出服务器),端口,加密(ssl/tls)用户名,密码。从文档

例子

  1. SwiftMailer
  2. PHPMailer
  3. Zend_Mail
+0

你有代码示例吗? – user127886 2012-04-26 02:57:18

+0

我确实尝试过PHPMailer,我确实设置了我的SMTP服务器,端口,用户名和密码,它不起作用。 – user127886 2012-04-26 03:01:44

+0

安全性如何?你们是否使用SSL或TLS等加密技术?我没有Windows管理员,但也可能有一个安全策略,仍然会阻止你以这种方式发送。但是,如果您可以连接说GMail,则可以随时发送。 – prodigitalson 2012-04-26 03:03:09

1

其实你可以直接连接到Outlook。 对我来说,接下来的代码工作刚刚开箱:

<?php 
    $subject="This is a test message";   
    $message="This is a Body Section now.....! :)";   
    $to="[email protected]"; 

    // starting outlook   
    com_load_typelib("outlook.application"); 

    if (!defined("olMailItem")) {define("olMailItem",0);} 

    $outlook_Obj = new COM("outlook.application") or die("Unable to start Outlook"); 

    //just to check you are connected.   
    echo "Loaded MS Outlook, version {$outlook_Obj->Version}\n";   
    $oMsg = $outlook_Obj->CreateItem(olMailItem);   
    $oMsg->Recipients->Add($to); 
    $oMsg->Subject=$subject;   
    $oMsg->Body=$message;   
    $oMsg->Save();   
    $oMsg->Send();  
?> 

请确保您已经添加

[COM_DOT_NET] 
extension=php_com_dotnet.dll 

在php.ini中结束(在我来说,我有PHP 5.3)

+0

它在服务器中工作吗?或者这只适用于本地主机? – 2017-08-29 06:52:43