Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

(❀╹◡╹)

[PHP] PHPMailer 사용 예제 본문

Programing/WEB

[PHP] PHPMailer 사용 예제

진 주 2019. 12. 17. 10:47
// 메일 발송
require_once $_SERVER['DOCUMENT_ROOT'].'/lib/PHPMailer/PHPMailer.php';
require_once $_SERVER['DOCUMENT_ROOT'].'/lib/PHPMailer/SMTP.php';
require_once $_SERVER['DOCUMENT_ROOT'].'/lib/PHPMailer/Exception.php';

/* gmail 계정 > 보안 > 보안 수준이 낮은 앱의 엑세스 사용으로 변경 필요 */

$mail = new PHPMailer\PHPMailer\PHPMailer(true);
// 서버세팅
$mail->SMTPDebug = 0;    // 디버깅 설정
$mail->isSMTP();        // SMTP 사용 설정

$mail->Host = gethostbyname('smtp.gmail.com'); // email 보낼때 사용할 서버를 지정
$mail->SMTPAuth = true;         // SMTP 인증을 사용함
$mail->Username = GOOGLE_EMAIL; // 메일 계정
$mail->Password = GOOGLE_PW;    // 메일 비밀번호
$mail->SMTPSecure = 'ssl';      // SSL을 사용함
$mail->Port = 465;              // email 보낼때 사용할 포트를 지정
$mail->CharSet = 'utf-8';       // 문자셋 인코딩

// 보내는 메일
$mail->setFrom('from@test.com', '보내는이');

// 받는 메일
$mail->addAddress('to@test.com', '받는이');

// 메일 내용
$mail->isHTML(true);         // HTML 태그 사용 여부
$mail->Subject = '메일 제목'; // 메일 제목
$mail->AddEmbeddedImage($_SERVER['DOCUMENT_ROOT'].'/static/images/mail/logo.png', 'logo');
$mail->Body = '메일 발송 내용<img src="cid:logo">';

// Gmail로 메일을 발송하기 위해서는 CA인증이 필요하다.
// CA 인증을 받지 못한 경우에는 아래 설정하여 인증체크를 해지하여야 한다.
$mail->SMTPOptions = array(
  'ssl' => array(
    'verify_peer' => false
    , 'verify_peer_name' => false
    , 'allow_self_signed' => true
  )
);

// 메일 전송
if (!$mail->send()) throw new Exception('일시적인 오류가 발생하였습니다. 잠시후 다시 시도하여주십시오.');');