美文网首页开发点滴我爱编程
利用PHPmailer发送邮件及问题解决

利用PHPmailer发送邮件及问题解决

作者: Nomandia | 来源:发表于2018-04-10 17:49 被阅读0次

    利用PHPMailer发送邮件

    ## 相关引用后生成实例
    $mailer = new EMailer();
    
    ## 开启安全认证,默认是false
    $mailer->SMTPAuth = true;
    
    ## 此处举例的是阿里邮箱的smtp服务器地址
    $mailer->Host = 'smtp.mxhichina.com';
    
    ## 启用smtp,默认是空
    $mailer->IsSMTP();
    
    ## 启用安全通道,默认空。这里最好看看邮件服务的配置,阿里是ssl
    $mailer->SMTPSecure = 'ssl';
    
    ## 邮件服务器端口,务必用telnet xxx port证明下端口是通的
    $mailer->Port = 465;
    
    ## 邮件编码
    $mailer->CharSet = 'UTF-8';
    
    ## 发件人名(用于显示)
    $mailer->FromName = '上帝';
    
    ## 发件人账号,通常是你的邮箱地址
    $mailer->Username = 'xxx@yyy.com';
    
    ## 发件人的邮箱密码
    $mailer->Password = 'secret';
    
    ## 发件人邮件地址
    $mailer->From = 'sdkjgy@xxx.com';
    
    ## 开启的话会支持HTML
    $mailer->isHTML(true);
    
    ## 收件人地址,数组或字符串
    $mailer->addAddress('nomandia@xxx.com');
    
    ## 邮件主题
    $mailer->Subject = '邮件主题';
    
    ## 邮件内容
    $mailer->Body = '<h1>Hello World</h1>';
    
    ## 发送,$status=true时表示发送成功
    $status = $mailer->send();
    
    

    通常这么设置后边可以正常发送邮件了,不过有时候会遇到问题,常见的错误有:

    Could not instantiate mail function. :代码服务器不支持邮件功能,可以先检查PHP是否启用 openssl和sockets模块,windows就纠结了。另外要确保25、465等端口没有被占用。

    SMTP Error: Could not connect to SMTP host
    连不上邮件服务器(Host值),可能的情况是:防火墙、地址填错了、端口错等。可考虑先用telnet host port连下看看。

    SMTP server error: mail from address must be same as authorization user:认证失败就看看你的账号密码是否填错,有些邮箱(如:企鹅)是有二级密码的,此密码并非登录密码。

    相关文章

      网友评论

        本文标题:利用PHPmailer发送邮件及问题解决

        本文链接:https://www.haomeiwen.com/subject/ihvnhftx.html