Mail SMTP를 활용하여 메일 및 첨부파일을 발송하는 방법을 안내합니다.
확인해 주세요
manager 에서 '외부 SMTP' 기능을 활성화하지 않은 경우 (Local 서버에서 메일 발송하는 경우)
서버에서 SMTP Port를 지원해야 합니다.
사용 준비
Mail을 사용하기 위해선 아래와 같이 Controller 최상단에 use 가 선언 되어야 합니다.
Controller
/app/test.php
Mail을 수행하기 위해 새로운 인스턴스를 생성합니다.
<?php use Make\Library\Mail;
Controller
/app/test.php
<?php use Make\Library\Mail; ... $mail = new Mail();
Mail 발송 설정
아래 예시와 같이 Mail 발송을 위해 발송 옵션을 설정합니다.From 및 Template 정보는 manager 에서 설정한 정보가 자동 반영되지만 아래 예시와 같이 직접 지정할 수도 있습니다.
또한, 수신자는 여러명 지정할 수 있습니다.
Controller
/app/test.php
<?php use Make\Library\Mail; ... $mail = new Mail(); $mail->set( array( 'tpl' => 'test_template', //본문 Template 지정 'from' => array( 'name' => 'Admin', //발신자 이름 'email' => 'fromemail@zigger.net' //발신자 E-mail ), 'to' => array( [ 'name' => 'Foo', //수신자 이름 'email' => 'toemail@testdomain.com' //수신자 E-mail ], [ 'name' => 'Tom', //수신자 이름 'email' => 'toemail2@testdomain.com' //수신자 E-mail ] ), 'subject' => 'Test Email', //메일 제목 'memo' => 'Hello Foo!' //메일 본문 ) );
Option | 설명 | 기본값 |
---|---|---|
tpl (optional) | manager 에서 생성한 메일 본문 템플릿 지정 | default |
from.name(optional) | 발신자 email | manager 에서 설정한 사이트명 |
from.email(optional) | 발신자 email | manager 에서 설정한 관리자 E-mail |
to.name(optional) | 수신자 이름 | |
to.email | 수신자 email | |
subject | 메일 제목 설정 | |
memo | 메일 본문 설정 |
첨부파일이 포함된 Mail 발송 설정
서버에 저장된 특정 파일을 Mail에 첨부하여 발송하는 방법을 안내합니다.파일은 다중 첨부 가능하며, 최대 첨부파일 용량은 STMP 서버의 환경 설정 값을 따릅니다.
Controller
/app/test.php
<?php use Make\Library\Mail; ... $mail = new Mail(); $mail->set( array( 'tpl' => 'test_template', //본문 Template 지정 'from' => array( 'name' => 'Admin', //발신자 이름 'email' => 'fromemail@zigger.net' //발신자 E-mail ), 'to' => array( [ 'name' => 'Foo', //수신자 이름 'email' => 'toemail@testdomain.com' //수신자 E-mail ], [ 'name' => 'Tom', //수신자 이름 'email' => 'toemail2@testdomain.com' //수신자 E-mail ] ), 'subject' => 'Test Email', //메일 제목 'memo' => 'Hello Foo!', //메일 본문 'attach' => array( [ 'path' => PH_DATA_PATH.'/emailAttach/origin_filename.zip', //서버에 저장된 파일 경로 'name' => 'attach_name.zip' //메일 본문에 노출될 파일 이름 ] ) ) );
Option | 설명 | 기본값 |
---|---|---|
attach.path (optional) | 서버에 저장된 파일 경로 지정 (메일에 첨부할 원본 파일) | |
attach.name (optional) | 메일에 노출될 첨부파일명 설정 |
Mail 발송 수행
send() 로 메일 발송을 수행합니다.
Controller
/app/test.php
<?php use Make\Library\Mail; ... $mail = new Mail(); $mail->set( array( 'tpl' => 'test_template', //본문 Template 지정 'from' => array( 'name' => 'Admin', //발신자 이름 'email' => 'fromemail@zigger.net' //발신자 E-mail ), 'to' => array( [ 'name' => 'Foo', //수신자 이름 'email' => 'toemail@testdomain.com' //수신자 E-mail ], [ 'name' => 'Tom', //수신자 이름 'email' => 'toemail2@testdomain.com' //수신자 E-mail ] ), 'subject' => 'Test Email', //메일 제목 'memo' => 'Hello Foo!', //메일 본문 'attach' => array( [ 'path' => PH_DATA_PATH.'/emailAttach/origin_filename.zip', //서버에 저장된 파일 경로 'name' => 'attach_name.zip' //메일 본문에 노출될 파일 이름 ] ) ) ); $mail->send();
연관 가이드 바로가기
메일에 첨부할 첨부파일 서버에 업로드 방법