ASP源码.NET源码PHP源码JSP源码JAVA源码DELPHI源码PB源码VC源码VB源码Android源码
当前位置:首页 >> 网络编程 >> PHP教程 >> PHP实现SMTP邮件的发送实例

PHP实现SMTP邮件的发送实例

来源:网络整理     时间:2018-10-04     关键词:

本篇文章主要介绍了" PHP实现SMTP邮件的发送实例",主要涉及到方面的内容,对于PHP教程感兴趣的同学可以参考一下: 当你还在纠结php内置的mail()函数不能发送邮件时,那么你现在很幸运,此时的这篇文章可以帮助到你!php利用smtp类来发邮件真是屡试不爽,我用过很久了,基...

当你还在纠结php内置的mail()函数不能发送邮件时,那么你现在很幸运,此时的这篇文章可以帮助到你!

php利用smtp类来发邮件真是屡试不爽,我用过很久了,基本上没出过问题。本博客后台,当博主回复留言时候,会自动给网友发一封有新回复提示的邮件也是用的本文这个方法实现的。

smtp类发送邮件的方法其实很简单,也很稳定,类是别人已经写好的了,你只需要调用就行了。几行简单的配置就能发邮件,是不是很期待的试一试呢!

<?php
 
/**
 * @param $address mixed 收件人 多个收件人/或需要设置收件人昵称时为数组 array($address1,$address1)/array(array('address'=>$address1,'nickname'=>$nickname1),array('address'=>$address2,'nickname'=>$nickname2))
 * @param $subject string 邮件主题
 * @param $body  string 邮件内容
 * @param $file  string 附件
 * @return bool|string  发送成功返回true 反之返回报错信息
 * @throws Exception
 */
function send_mail_by_smtp($address, $subject, $body, $file = '')
{
 require('./PHPMailer-master/Exception.php');
 require('./PHPMailer-master/PHPMailer.php');
 require('./PHPMailer-master/SMTP.php');
 
 //date_default_timezone_set("Asia/Shanghai");//设定时区东八区
 
 $mail = new PHPMailer();
 
 //Server settings
 $mail->SMTPDebug = 2;
 $mail->isSMTP();                   // 使用SMTP方式发送
 $mail->Host = 'smtp.126.com';             // SMTP邮箱域名
 $mail->SMTPAuth = true;                // 启用SMTP验证功能
 $mail->Username = "*****@126.com";          // 邮箱用户名(完整email地址)
 $mail->Password = "*****";              // smtp授权码,非邮箱登录密码
 $mail->Port = 25;
 $mail->CharSet = "utf-8";               //设置字符集编码 "GB2312"
 
 // 设置发件人信息,显示为 你看我那里像好人(xxxx@126.com)
 $mail->setFrom($mail->Username, '你看我那里像好人');
 
 //设置收件人 参数1为收件人邮箱 参数2为该收件人设置的昵称 添加多个收件人 多次调用即可
 //$mail->addAddress('********@163.com', '你看我那里像好人');
 
 if (is_array($address)) {
  foreach ($address as $item) {
   if (is_array($item)) {
    $mail->addAddress($item['address'], $item['nickname']);
   } else {
    $mail->addAddress($item);
   }
  }
 } else {
  $mail->addAddress($address, 'adsf');
 }
 
 
 //设置回复人 参数1为回复人邮箱 参数2为该回复人设置的昵称
 //$mail->addReplyTo('*****@126.com', 'Information');
 
 if ($file !== '') $mail->AddAttachment($file); // 添加附件
 
 $mail->isHTML(true);  //邮件正文是否为html编码 true或false
 $mail->Subject = $subject;   //邮件主题
 $mail->Body = $body;      //邮件正文 若isHTML设置成了true,则可以是完整的html字符串 如:使用file_get_contents函数读取的html文件
 //$mail->AltBody = 'This is the body in plain text for non-HTML mail clients'; //附加信息,可以省略
 
 return $mail->Send() ? true : 'ErrorInfo:' . $mail->ErrorInfo;
}
 
$path = '.\wpic907.jpg';
$ret = send_mail_by_smtp('*******@163.com', 'PHPMailer邮件标题', 'PHPMailer邮件内容', $path);

您可能感兴趣的文章:

  • PHP使用SMTP邮件服务器发送邮件示例
  • php smtp实现发送邮件功能
  • PHP基于SMTP协议实现邮件发送实例代码
  • php通过smtp邮件验证登陆的方法
  • php使用pear_smtp发送邮件
  • php mailer类调用远程SMTP服务器发送邮件实现方法
  • php利用smtp类实现电子邮件发送

以上就介绍了 PHP实现SMTP邮件的发送实例,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

本文网址链接:http://www.codes51.com/article/detail_4591787.html

相关图片

相关文章