PHP邮件发送类PHPMailer用法实例详解

前端之家收集整理的这篇文章主要介绍了PHP邮件发送类PHPMailer用法实例详解前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

本文实例讲述了PHP邮件发送类PHPMailer用法,并详细讲述了其具体的操作步骤。分享给大家供大家参考。具体步骤如下:

1.在服务器安装 sendmail

2.启动 sendmail

3.修改 PHP.ini

4.Function sendMail函数如下

PHP;"> if(empty($receiver) || empty($sender) || empty($subject) || empty($content)){
return false;
}

$mail = new PHPMailer();

//$mail->IsSMTP(); // 经smtp发送
//$mail->Host = "smtp.gmail.com"; // SMTP 服务器
//$mail->Port = 465; // SMTP 端口
//$mail->SMTPSecure = 'ssl'; // 加密方式
//$mail->SMTPAuth = true; // 打开SMTP认证
//$mail->Username = "username"; // 用户名
//$mail->Password = "password"; // 密码

$mail->IsMail(); // using PHP mail() function 有可能會出現這封郵件可能不是由以下使用者所傳送的提示

$mail->From = $sender; // 发信人
$mail->FromName = $sender_name; // 发信人别名
$mail->AddReplyTo($sender); // 回覆人
$mail->AddAddress($receiver); // 收信人

// 以html方式发送
if($ishtml){
$mail->IsHTML(true);
}

// 发送附件
if($attachments){
if(is_array($attachments)){
$send_attachments = array();

  1. $tmp_attachments = array_slice($attachments,1);
  2. if(!is_array(array_pop($tmp_attachments))){
  3. if(isset($attachments['path'])){
  4. array_push($send_attachments,$attachments);
  5. }else{
  6. foreach($attachments as $attachment){
  7. array_push($send_attachments,array('path'=>$attachment));
  8. }
  9. }
  10. }else{
  11. $send_attachments = $attachments;
  12. }
  13. foreach($send_attachments as $attachment){
  14. $attachment['name'] = isset($attachment['name'])? $attachment['name'] : null;
  15. $attachment['encoding'] = isset($attachment['encoding'])? $attachment['encoding'] : 'base64';
  16. $attachment['type'] = isset($attachment['type'])? $attachment['type'] : 'application/octet-stream';
  17. if(isset($attachment['path']) && file_exists($attachment['path'])){
  18. $mail->AddAttachment($attachment['path'],$attachment['name'],$attachment['encoding'],$attachment['type']);
  19. }
  20. }
  21. }elseif(is_string($attachments)){
  22. if(file_exists($attachments)){
  23. $mail->AddAttachment($attachments);
  24. }
  25. }

}

$mail->Subject = $subject; // 邮件标题
$mail->Body = $content; // 邮件內容
return $mail->Send();
}

// DEMO示例如下:
$receiver = 'receiver@test.com';
$sender = 'sender@test.com';
$sender_name = 'sender name';
$subject = 'subjecct';
$content = 'content';

// 四种格式都可以
$attachments = 'attachment1.jpg';
$attachments = array('path'=>'attachment1.jpg','name'=>'附件1.jpg');
$attachments = array('attachment1.jpg','attachment2.jpg','attachment3.jpg');
$attachments = array(
array('path'=>'attachment1.jpg','name'=>'附件1.jpg'),array('path'=>'attachment2.jpg','name'=>'附件2.jpg'),array('path'=>'attachment3.jpg','name'=>'附件3.jpg'),);
$flag = sendMail($receiver,true,$attachments);
echo $flag;
?>

源码点击此处PHPmailer(jb51.cc).rar">本站下载。

希望本文所述对大家PHP程序设计的学习有所帮助。

猜你在找的PHP相关文章