首页后端开发PHP学习PHP实现SMTP邮件的发送

学习PHP实现SMTP邮件的发送

时间2024-02-02 07:13:03发布访客分类PHP浏览505
导读:收集整理的这篇文章主要介绍了学习PHP实现SMTP邮件的发送,觉得挺不错的,现在分享给大家,也给大家做个参考。当你还在纠结php内置的mail( 函数不能发送邮件时,那么你现在很幸运,此时的这篇文章可以帮助到你!php利用smtp类来发邮件...
收集整理的这篇文章主要介绍了学习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编程从入门到精通

以上就是学习PHP实现SMTP邮件的发送的详细内容,更多请关注其它相关文章!

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: 学习PHP实现SMTP邮件的发送
本文地址: https://pptw.com/jishu/596525.html
PHP演示如何发送邮件给某个邮箱 2021最常用的8个代码编辑器推荐

游客 回复需填写必要信息