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    =  "xichuanfu@sina.com";   // *修改值*
$to    =  "xcf-007@163.com";   // *修改值*
$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链接时
 />


用到的类

还有一个试了试本地不行需要认证
<?php
ini_set('SMTP', 'smtp.sina.com');
$headers ='MIME-Version: 1.0'. "\r\n";
$headers .='Content-type: text/html; charset=gbk'. "\r\n";
$headers .='From: root@yourdomain.com'. "\r\n";
mail( "xichuanfu@sina.com", "测试mail()函数", "这里我们测试一下mail函数的用法",$headers);
>

地址







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

相关文章
PHP:guzzlehttp/guzzle发送同步和异步网络请求
PHP:guzzlehttp/guzzle发送同步和异步网络请求
1221 0
|
PHP 开发者
PHP数据验证方法:如何检查一个字符串是否是email格式。
以上就是关于PHP如何检查一个字符串是否是email格式的全部内容。希望你在代码书写旅途中,能找到你的北斗星——简洁、高效、可靠的代码验证方式。让我们共同见证PHP的强大和丰富多彩!
387 16
|
PHP 开发工具
php之微信公众号发送模板消息
php之微信公众号发送模板消息
601 0
php之微信公众号发送模板消息
|
PHP
php发送post请求,koa2接受数据
php发送post请求,koa2接受数据
215 0
php发送post请求,koa2接受数据
|
网络安全 PHP
【PHP】浏览器无法访问localhost
【PHP】浏览器无法访问localhost
370 0
【PHP】浏览器无法访问localhost
PHP:ThinkPHP使用PHPMailer发送html邮件
PHP:ThinkPHP使用PHPMailer发送html邮件
496 0
|
JSON PHP 数据格式
PHP:curl发送GET、POST请求
PHP:curl发送GET、POST请求
610 0
|
API PHP
php发送post请求的两种方法
php发送post请求的两种方法
618 0
|
PHP
php利用smtp类轻松的发送电子邮件
当你还在纠结php内置的mail()函数不能发送邮件时,那么你现在很幸运,此时的这篇文章可以帮助到你! php利用smtp类来发邮件真是屡试不爽,我用过很久了,基本上没出过问题。本博客后台,当博主回复留言时候,会自动给网友发一封有新回复提示的邮件也是用的本文这个方法实现的。 smtp类发送邮件的方法其实很简单,也很稳定,类是别人已经写好的了,你只需要调用就行了。几行简单的配置就能发邮件,是不是很期待的试一试呢!
533 0