天天看点

php本地localhost发送email

51CTO郁闷死我啦,好不容易整了一大段,一发表失败,还得从头再来,太不人性化了,需要改进啊,最起码也得先本地保存一下吧。

这里是在本地通过smtp.sina.com的服务器给163的邮箱发邮件,当然你可以具体看情况设置

testmail.php:

<?php

/**

 * 本实例通过Auth SMTP发送一个带有 文本 + HTML + 内嵌图片 + 附件 

 * 的 eMail

 */

 * 首先需要包含此类并声明一个变量

include ('mimemail.inc.php');

$mimemail = new nomad_mimemail();

 * 首先设置SMTP的值

 * 注: SMTP用户可以是一个email如果需要的话

$smtp_host  = "smtp.sina.com";  // *修改值*

$smtp_user  = "username";    // *修改值*

$smtp_pass  = "123456";    // *修改值*

 * 设置mail变量值创建邮件

 * 检查下$html变量,带有一个img标签设置了src='image.gif'

$from    = "[email protected]";  // *修改值*

$to    = "[email protected]";  // *修改值*

$subject  = "来一个MIME Mail例子";

$text    = "这里是MIME Mail纯文本\n\n";

$html    = "<p>这是一个 <b>MIME</b>邮件,带有:</p>

         <ul>

         <li>纯文本</li>

         <li>HTML</li>

         <li>嵌入图片</li>

         <li>附件</li>

         </ul>

         <img src='my_image.jpg' border='0'>";

 * 设置附件的文件路径

$attach_image  = "imgs/image.jpg";

$attach_file  = "imgs/file.gz";

 * 设置类中的所有变量值

$mimemail->set_from($from);

$mimemail->set_to($to);

$mimemail->set_subject($subject);

$mimemail->set_text($text);

$mimemail->set_html($html);

// 声明上面5行的快捷方式是

// $mimemail->new_mail($from, $to, $subject, $text, $html);

 * 添加附件根据文件名, 你会发现方法中的图片名和HTML文本中嵌入图片的声明的相同

 * 

$mimemail->add_attachment($attach_image, "my_image.jpg");

$mimemail->add_attachment($attach_file, "my_file.gz");

 * 设置SMTP值.

 * 如果你不需要Auth SMTP你可以注释掉set_smtp_auth部分

 * 如果你不需要任何的SMTP你可以注释掉这2行,那么mail通过php的mail函数发送

$mimemail->set_smtp_log(true); // 如果你需要调试SMTP链接时

$mimemail->set_smtp_host($smtp_host);

$mimemail->set_smtp_auth($smtp_user, $smtp_pass);

$mimemail->set_charset('GBK');//中文编码

 * 发送邮件

if ($mimemail->send()){

        echo "MIME Mail邮件已经发送.";

}

else {

        echo "发送错误,邮件没有被发送.";

echo "<br><br><textarea cols=80 rows=30>" . $mimemail->get_smtp_log() . "</textarea>"; // 如果你需要调试SMTP链接时

 />

用到的类

<a href="http://www.phpclasses.org/browse/package/1267.html">http://www.phpclasses.org/browse/package/1267.html</a>

还有一个试了试本地不行需要认证

ini_set('SMTP', 'smtp.sina.com');

$headers ='MIME-Version: 1.0'."\r\n";

$headers .='Content-type: text/html; charset=gbk'."\r\n";

$headers .='From: [email protected]'."\r\n";

mail("[email protected]","测试mail()函数","这里我们测试一下mail函数的用法",$headers);

&gt;

地址

<a href="http://roshanbh.com.np/2007/12/sending-e-mail-from-localhost-in-php-in-windows-environment.html">http://roshanbh.com.np/2007/12/sending-e-mail-from-localhost-in-php-in-windows-environment.html</a>

 本文转自 xcf007 51CTO博客,原文链接:http://blog.51cto.com/xcf007/138957,如需转载请自行联系原作者