欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

用pear自带的mail类库发邮件 - PHP

程序员文章站 2022-04-29 21:25:36
...
php代码
body = "<a href='http://www.baidu.com/' target='_blank'>点我重新生成密码</a>";
 
sendMail_smtp("xxxxxxxx@qq.com",'测试',$body);
 
function sendMail_smtp($smtpemailto,$mailsubject,$mailbody){
    //error_reporting(7);
      
    require_once 'Mail.php';
    require_once 'Mail/mime.php';
 
    $from = 'admin@xxx.com';
    $to   = $smtpemailto;
    $password = 'xxxxxx';
      
    $mail_config=array(
            "host"=>"smtp.ym.163.com",
            "port"=>25,
            "auth"=>true,
            "username"=>$from,
            "password"=>$password,
            "from"=>$from,
    );
      
    $hdrs = array(
            'From'=>$from,
            'To' => $to, //收信地址
            'Subject'=>$mailsubject
    );
      
    $mime = new Mail_mime();
    //$mime->setTXTBody($text);
    //添加附件
    //$mime->addHTMLImage('php.gif','image/gif','12345',true);
    $mime->_build_params['html_charset'] = "utf-8";//设置编码格式
    $mime->_build_params['head_charset'] = "utf-8";//设置编码格式 
    $mime->setHTMLBody($mailbody);
    $body = $mime->get();
    $hdrs = $mime->headers($hdrs);
      
    $mail = Mail::factory('smtp',$mail_config);
    $succ = $mail->send($to,$hdrs,$body);
      
    if (PEAR::isError($succ))
    {
        //echo 'Email sending failed: ' . $succ->getMessage();
        $err = 'Email sending failed: ' . $succ->getMessage();
        $content = $to."\\t".date('Y-m-d H:i:s')."\\t ".$err." \\r\\n" ;
    }
    else
    {
        //$content = $to."\\t".date('Y-m-d H:i:s')."\\t Email sent succesfully \\r\\n" ;
        return true;
          
    }
      
}