zoukankan      html  css  js  c++  java
  • phpmailer发送邮件

    phpmailer发送邮件

      PHP内置的mail函数使用起来不够方便,另外受其他语言的影响,博主更偏好面向对象的包管理模式,因此phpmailer成为了我用PHP发送邮件的首选,这里分享给大家。

    库导入

    ​ 这里使用composer进行包管理,以下是json文件:

    {
        "name": "",
        "description": "test the mail",
        "require": {
            "PHPMailer/PHPMailer":"*"   
        }
    }
    

    使用样例

    <?php
    // include("./vendor/autoload.php");
    include("./vendor/phpmailer/phpmailer/class.phpmailer.php");
    include("./vendor/phpmailer/phpmailer/class.smtp.php");
    function postmail($to, $subject="", $body="")
    {
        $mail = new PHPMailer(); #创建PHPMailer实例
        $mail->CharSet = 'utf-8'; #设置编码形式,默认为iso-8859-1
        $mail->isSMTP(); #表示使用SMTP服务
        $mail->SMTPAuth = true; #使用SMTP认证
        $mail->Host = 'smtp.163.com'; #SMTP主机名,这里以163为例
        $mail->Username = "xxxx@163.com"; #SMTP服务的用户名
        $mail->Password = "xxxx"; #SMTP用户的密码(现在多采用授权码的形式)
        
        #下面的部分是用户可见的
        $mail->setFrom("xxxx@163.com","userName"); #第二个参数,用户看到的发送方的姓名,是可以随便改的
        $mail->Subject = $subject; #邮件主题
        $mail->msgHTML($body); #邮件内容,这里采用HTML形式
        $mail->addAddress($to,''); #地址,第二个参数是接受者,发送对象名为''时,163的测试结果是SMTP服务商会把它改成‘我’
        $mail->addAttachment('./php.png'); #添加附件
        #发送
        if($mail->send())
        {
            echo "邮件发送成功";
        }else
        {
            echo "邮件发送失败";
        }
    }
    postmail('xxxx@qq.com',"测试","你好吗");
    ?>
    

    测试结果

    ​ 博主使用163作为发送方,发送给QQ邮箱、163邮箱均通过测试。

  • 相关阅读:
    二叉排序树的建立与遍历 Anti
    SDUT ACM 2144 最小生成树,克鲁斯卡尔模板 Anti
    用STL优先队列对字符串排序 Anti
    HDU 1176 免费馅饼 水dp Anti
    SDUT ACM 2408 Pick apples 贪心+完全背包 Anti
    筛选法找素数模板 Anti
    JS获取事件的目标
    Javascript中的Prototype和Constructor
    有关于ValueOf( )和toString( )
    JavaScript Animate
  • 原文地址:https://www.cnblogs.com/fanghao/p/7407143.html
Copyright © 2011-2022 走看看