FuelPHP-이메일 관리
이메일 기능은 웹 프레임 워크에서 가장 많이 요청되는 기능입니다. FuelPHP는 패키지로 번들 된 우아한 이메일 클래스를 제공합니다. 여러 첨부 파일이있는 고급 서식있는 텍스트 이메일뿐만 아니라 간단한 일반 텍스트 이메일을 보내는 데 사용됩니다. 일반 텍스트 메일, HTML 메일, 첨부 파일 및 인라인 첨부 파일과 같은 기능을 지원합니다.
구성
애플리케이션에서 이메일 기능을 활성화하려면 아래의 기본 구성 파일 fuel / app / config / config.php에 지정된대로 이메일 패키지를로드하기 만하면됩니다.
'always_load' => array (
'packages' => array (
'email',
),
),
또 다른 옵션은 다음과 같이 컨트롤러 자체 인 이메일 패키지를로드하는 것입니다.
\Package::load('email');
이메일 설정은 기본 구성 파일에서 수행 할 수 있으며 몇 가지 중요한 옵션은 다음과 같습니다.
driver − smtp와 같은 이메일 드라이버
is_html − 메일을 HTML 콘텐츠로 보낼지 여부
priority − 이메일 우선 순위
smtp.host − SMTP 서버 호스트
smtp.port − SMTP 서버 포트
smtp.username − SMTP 서버 사용자 이름
smtp.password − SMTP 서버 비밀번호
smtp.timeout − SMTP 시간 초과
smtp.starttls − SMTP 서버에 STARTTLS 명령이 필요한지 여부
이메일 API
다음은 이메일 및 이메일 드라이버 클래스에서 제공하는 API입니다.
단조 공장
목적 : 이메일 드라이버의 인스턴스를 생성합니다. 수신 한 구성 또는 입력을 기반으로 드라이버를 생성합니다. 이메일 드라이버는 메일을 작성하고 보내는 기능을 제공합니다. 가능한 이메일 드라이버 중 일부는 다음과 같습니다.smtp, sendmail, mailgun, 과 mandrill.
Parameter − 없음 또는 구성 세부 정보 배열
Returns − Email_Driver 객체를 반환합니다.
예를 들면
$email = \Email::forge();
$email = \Email::forge (array(
'driver' => 'smtp',
));
몸
Purpose − 메시지 본문을 설정하려면
Parameter − $ body-메시지 본문
Returns − 현재 인스턴스를 반환합니다.
예를 들면
$email = \Email::forge();
$email->body('Body message');
//or pass it a View
$email->body(\View::forge('my/view', $data);
alt_body
Purpose − 대체 메시지 본문을 설정하려면
Parameter − $ alt_body-대체 메시지 본문
Returns − 현재 인스턴스를 반환합니다.
예를 들면
$email = \Email::forge();
$email->alt_body('Body message');
//or pass it a View
$email->alt_body(\View::forge('my/view', $data);
우선 순위
Purpose − 메일의 우선 순위를 설정하려면
Parameter −
$priority− 우선 순위 값. 옵션은-
a. \Email::P_LOWEST
* \Email::P_LOW
* \Email::P_NORMAL
* \Email::P_HIGH
* \Email::P_HIGHEST
Returns − 현재 인스턴스를 반환합니다.
예를 들면
$email = \Email::forge();
$email->priority(\Email::P_HIGHEST);
html_body
Purpose − 메시지 본문을 HTML 형식으로 설정하려면
Parameter −
$html − HTML의 메시지 본문
generate_alt − 대체 메시지 생성 여부
auto_attach − 이미지 삽입 여부
Returns − 현재 인스턴스를 반환합니다.
예를 들면
$email = \Email::forge();
// Do generate the alt body, but don't auto attach images.
$email->html_body(\View::forge('welcome/email', $data), true, false);
...에서
Purpose − 보낸 사람 주소를 설정하려면
Parameters −
$from − 이메일 주소에서
$name − 발신자 이름
Returns − 현재 인스턴스를 반환합니다.
예를 들면
$email = \Email::forge();
$email->from('[email protected]', 'My Name');
제목
Purpose − 메시지 제목을 설정하려면
Parameter − $ subject-이메일 메시지의 제목
Returns − 현재 인스턴스를 반환합니다.
예를 들면
$email = \Email::forge();
$email->subject('Suject of the mail message');
...에
Purpose − 수신자 이메일 주소를 설정하려면
Parameters −
$email − 이메일 주소 또는 이메일 주소 배열
$name − 수신자 이름
Returns − 현재 인스턴스를 반환합니다.
예를 들면
$email = \Email::forge();
$email->to('[email protected]', 'My Dear Name');
$email->to (array(
'[email protected]',
'[email protected]' => 'My Dear friend',
));
머리글
Purpose − 이메일 메시지에 사용자 정의 헤더를 설정하려면
Parameters −
$header − 헤더 유형 또는 헤더 배열
$value − 헤더 값
Returns − 현재 인스턴스를 반환합니다.
예를 들면
$email = \Email::forge();
$email->header('X-SMTPAP', 'XXXXXXXX');
$email>reply_to (array(
'X-SMTPAP' => 'XXXXXX',
'X-SMTPAP2' > 'XXXXXA',
));
붙이다
Purpose − 이메일 메시지에 파일을 첨부하려면
Parameters−
$file − 파일 경로
$inline − 파일을 인라인으로 첨부할지 여부
$cid − 콘텐츠 식별자
$mime − 첨부 파일의 MIME 유형
$name − 첨부 파일 이름 재정의
Returns − 현재 인스턴스를 반환합니다.
예를 들면
$email = \Email::forge();
$email>attach(DOCROOT.'attachments/sample_attachment.pdf');
보내다
Purpose − 메일을 보내려면.
Parameter −
$validate − 이메일 주소 유효성 검사 여부
Returns − 참 또는 거짓
예를 들면
$email = \Email::forge();
try{
$email->send();
} catch(\EmailSendingFailedException $e) {
// The driver could not send the mail.
} catch(\EmailValidationFailedException $e) {
// One or more email addresses failed validation.
}
근무 이메일 샘플
이전 장에서 배운 API를 사용하고 메시지를 보내는 간단한 코드를 만들어 보겠습니다. 다음은 메시지를 보내는 가장 간단한 코드입니다.
$email = Email::forge();
$email->from('[email protected]', 'person1');
$email->to('[email protected]', 'person2');
$email->subject('Add something');
$email->body('contents of mail'); $email->send();