PHPMAILER PHP 메 일 발송 기능 구현

5591 단어 phpmailerPHP우편물
본 논문 의 사례 는 PHPMAILER 가 PHP 메 일 발송 기능 을 실현 하 는 구체 적 인 코드 를 공유 하여 여러분 께 참고 하 시기 바 랍 니 다.구체 적 인 내용 은 다음 과 같 습 니 다.
첫 번 째 단계:웹 사이트 PHPMailer 다운로드 을 열 려 면 PHPMailer 는 PHP 의 sockets 확장 지원 이 필요 하 며,QQ 메 일 박스 SMTP 서버 에 로그 인 하려 면 SSL 로 암호 화 되 어야 하 며,PHP 에는 openssl 지원 이 포함 되 어 있어 야 합 니 다.

두 번 째 단계:phopinfo()함수 로 socket 과 openssl 확장 정 보 를 봅 니 다(wamp server 기본 값 으로 이 확장 을 사용 합 니 다).
openssl 이 열 리 지 않 았 다 면 php.ini 파일 을 열 어 열 어 주 십시오.
우선 php.ini 검사 중;extension=php_openssl.dll 이 존재 하 는 지,존재 한다 면 앞의 주석 부 호 를 제거 합 니 다.이 줄 이 존재 하지 않 는 다 면 extension=php 추가openssl.dll。

PHPMailer 핵심 파일

STEP 3:QQ 메 일 박스 설정
모든 주류 메 일 은 SMTP 프로 토 콜 을 지원 하지만 모든 메 일이 기본적으로 열 리 는 것 은 아 닙 니 다.메 일 설정 에서 수 동 으로 열 수 있 습 니 다.
제3자 서 비 스 는 계 정과 비밀 번 호 를 제공 한 후에 SMTP 서버 에 로그 인하 여 메 일의 중계 방식 을 제어 할 수 있다.
STEP 4:SMTP 서비스 시작

IMAP/SMTP 서 비 스 를 선택 하고 클릭 하여 서비스 오픈
STEP 5:비밀 보장 검증

문자 보 내기"메 일 클 라 이언 트 설정"1069-0700-69 까지
STEP 6:인증 코드 획득

SMTP 서버 인증 비밀 번 호 는 잘 보관 해 야 합 니 다(PS:비밀 번 호 는 빈 칸 이 없습니다)
STEP 7:PHP 메 일 발송
기본 코드
다음 코드 는 PHPMailer 의 사용 방법 을 보 여 줍 니 다.PHPMailer 인 스 턴 스 의 설정 과정 에 주의 하 십시오.

//   PHPMailer     
require_once("PHPMailer/class.phpmailer.php");
require_once("PHPMailer/class.smtp.php");
 
//    PHPMailer   
$mail = new PHPMailer();
//     smtp debug                            debug    
$mail->SMTPDebug = 1;
//   smtp        
$mail->isSMTP();
// smtp          true
$mail->SMTPAuth = true;
//   qq          
$mail->Host = 'smtp.qq.com';
//     ssl        
$mail->SMTPSecure = 'ssl';
//   ssl  smtp            
$mail->Port = 465;
//           
$mail->CharSet = 'UTF-8';
//                                
$mail->FromName = '     ';
// smtp      QQ    
$mail->Username = '[email protected]';
// smtp              
$mail->Password = '**********';
//                
$mail->From = '[email protected]';
//        html            
$mail->isHTML(true);
//          
$mail->addAddress('[email protected]');
//                  
$mail->addAddress('[email protected]');
//         
$mail->Subject = '    ';
//       
$mail->Body = '<h1>Hello World</h1>';
//         
$mail->addAttachment('./example.pdf');
//          
$status = $mail->send(); 
나 는 thinkpp 5.0 에서 코드 를 사용한다.

/**
*     
* @param $to    
* @param string $subject     
* @param string $content     (html        )
* @throws Exception
* @throws phpmailerException
*/
function send_email($to,$subject='',$content=''){
  vendor('phpmailer.PHPMailerAutoload');
//require_once 'vendor/phpmailer/PHPMailerAutoload.php';
  $mail = new PHPMailer;
  $arr = db('config')->where('inc_type','smtp')->select();
  $config = convert_arr_kv($arr,'name','value');
  $mail->CharSet = 'UTF-8'; //      ,  ISO-8859-1,           ,    
  $mail->isSMTP();
//Enable SMTP debugging
// 0 = off (for production use)
// 1 = client messages
// 2 = client and server messages
  $mail->SMTPDebug = 0;
//      
//$mail->Debugoutput = 'html';
//smtp   
  $mail->Host = $config['smtp_server'];
//   - likely to be 25, 465 or 587
  $mail->Port = $config['smtp_port'];
 
 
 
  if($mail->Port === 465) $mail->SMTPSecure = 'ssl';//       
//Whether to use SMTP authentication
  $mail->SMTPAuth = true;
//    
  $mail->Username = $config['smtp_user'];
//  
  $mail->Password = $config['smtp_pwd'];
//Set who the message is to be sent from
  $mail->setFrom($config['smtp_user'],$config['email_id']);
//    
//$mail->addReplyTo('[email protected]', 'First Last');
//     
  if(is_array($to)){
    foreach ($to as $v){
      $mail->addAddress($v);
    }
  }else{
    $mail->addAddress($to);
  }
 
 
 
  $mail->isHTML(true);// send as HTML
//  
  $mail->Subject = $subject;
//HTML    
  $mail->msgHTML($content);
//Replace the plain text body with one created manually
//$mail->AltBody = 'This is a plain-text message body';
//    
//$mail->addAttachment('images/phpmailer_mini.png');
//send the message, check for errors
  return $mail->send();
}
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기