CodeIgniter-이메일 보내기
CodeIgniter에서 이메일을 보내는 것이 훨씬 쉽습니다. 또한 CodeIgniter에서 이메일에 대한 기본 설정을 구성합니다. CodeIgniter는 이메일 전송을 위해 다음과 같은 기능을 제공합니다.
- 다중 프로토콜-메일, Sendmail 및 SMTP
- SMTP 용 TLS 및 SSL 암호화
- 여러 수신자
- CC 및 BCC
- HTML 또는 일반 텍스트 이메일
- Attachments
- 줄 바꿈
- Priorities
- BCC 배치 모드 : 큰 이메일 목록을 작은 BCC 배치로 나눌 수 있습니다.
- 이메일 디버깅 도구
이메일 클래스에는 이메일 전송 작업을 단순화하기 위해 다음과 같은 기능이 있습니다.
| SN | 통사론 | 매개 변수 | 반환 | 반환 유형 | 
|---|---|---|---|---|
| 1 | from ( $ from [, $ name = '' [, $ return_path = NULL ]]) | $from( string ) − "From"이메일 주소 $name( 문자열 ) − "From"표시 이름 $return_path( 문자열 ) − 배달되지 않은 전자 메일을 리디렉션 할 선택적 전자 메일 주소 | CI_Email 인스턴스 (메소드 체인) | CI_Email | 
| 2 | reply_to ( $ replyto [, $ name = '' ]) | $replyto( 문자열 ) − 답장을위한 이메일 주소 $name( string ) − 회신 이메일 주소의 표시 이름 | CI_Email 인스턴스 (메소드 체인) | CI_Email | 
| 2 | 받는 사람 ( $ to ) | $to( 혼합 ) − 쉼표로 구분 된 문자열 또는 이메일 주소 배열 | CI_Email 인스턴스 (메소드 체인) | CI_Email | 
| 삼 | 참조 ( $ cc ) | $cc( 혼합 ) − 쉼표로 구분 된 문자열 또는 이메일 주소 배열 | CI_Email 인스턴스 (메소드 체인) | CI_Email | 
| 4 | bcc ( $ bcc [, $ limit = '' ]) | $bcc( 혼합 ) − 쉼표로 구분 된 문자열 또는 이메일 주소 배열 $limit( int ) − 배치 당 보낼 최대 이메일 수 | CI_Email 인스턴스 (메소드 체인) | CI_Email | 
| 5 | 제목 ( $ subject ) | $subject( 문자열 ) − 이메일 제목 | CI_Email 인스턴스 (메소드 체인) | CI_Email | 
| 6 | 메시지 ( $ body ) | $body( 문자열 ) − 이메일 메시지 본문 | CI_Email 인스턴스 (메소드 체인) | CI_Email | 
| 7 | set_alt_message ( $ str ) | $str( 문자열 ) − 대체 이메일 메시지 본문 | CI_Email 인스턴스 (메소드 체인) | CI_Email | 
| 8 | set_header ( $ header, $ value ) | $header( 문자열 ) − 헤더 이름 $value( 문자열 ) − 헤더 값 | CI_Email 인스턴스 (메소드 체인) | CI_Email | 
| 9 | clear ([ $ clear_attachments = FALSE ]) | $clear_attachments( bool ) – 첨부 파일을 지 울지 여부 | CI_Email 인스턴스 (메소드 체인) | CI_Email | 
| 10 | send ([ $ auto_clear = TRUE ]) | $auto_clear( bool ) − 메시지 데이터 자동 삭제 여부 | CI_Email 인스턴스 (메소드 체인) | CI_Email | 
| 11 | attach ($ filename [, $ disposition = ''[, $ newname = NULL [, $ mime = '']]]) | $filename( 문자열 ) − 파일 이름 $disposition( string ) − 첨부 파일의 '처분'. 대부분의 이메일 클라이언트는 여기에 사용 된 MIME 사양에 관계없이 자체 결정을 내립니다. iana $newname( string ) − 이메일에 사용할 사용자 정의 파일 이름 $mime( string ) − 사용할 MIME 유형 (버퍼링 된 데이터에 유용) | CI_Email 인스턴스 (메소드 체인) | CI_Email | 
| 12 | attachment_cid ( $ 파일 이름 ) | $filename( 문자열 ) − 기존 첨부 파일 이름 | 첨부 파일 콘텐츠 ID 또는 찾을 수없는 경우 FALSE | 끈 | 
이메일 보내기
CodeIgniter를 사용하여 이메일을 보내려면 먼저 다음을 사용하여 이메일 라이브러리를로드해야합니다.
$this->load->library('email');라이브러리를로드 한 후 다음 기능을 실행하여 이메일을 보내는 데 필요한 요소를 설정하면됩니다. 그만큼from() 기능은 설정에 사용됩니다-이메일이 전송되는 위치 및 to()기능이 사용됩니다-이메일을받는 사람. 그만큼subject() 과 message() 기능은 이메일의 제목과 메시지를 설정하는 데 사용됩니다.
$this->email->from('[email protected]', 'Your Name');
$this->email->to('[email protected]');
 
$this->email->subject('Email Test');
$this->email->message('Testing the email class.');그 후 send() 이메일을 보내려면 아래와 같이 기능합니다.
$this->email->send();예
컨트롤러 파일 만들기 Email_controller.php 그리고 그것을 저장하십시오 application/controller/Email_controller.php.
<?php 
   class Email_controller extends CI_Controller { 
 
      function __construct() { 
         parent::__construct(); 
         $this->load->library('session'); 
         $this->load->helper('form'); 
      } 
		
      public function index() { 
	
         $this->load->helper('form'); 
         $this->load->view('email_form'); 
      } 
  
      public function send_mail() { 
         $from_email = "[email protected]"; 
         $to_email = $this->input->post('email'); 
   
         //Load email library 
         $this->load->library('email'); 
   
         $this->email->from($from_email, 'Your Name'); 
         $this->email->to($to_email);
         $this->email->subject('Email Test'); 
         $this->email->message('Testing the email class.'); 
   
         //Send mail 
         if($this->email->send()) 
         $this->session->set_flashdata("email_sent","Email sent successfully."); 
         else 
         $this->session->set_flashdata("email_sent","Error in sending Email."); 
         $this->load->view('email_form'); 
      } 
   } 
?>라는보기 파일을 만듭니다. email_form.php 그리고 그것을 저장하십시오 application/views/email_form.php
<!DOCTYPE html> 
<html lang = "en"> 
   <head> 
      <meta charset = "utf-8"> 
      <title>CodeIgniter Email Example</title> 
   </head>
	
   <body> 
      <?php 
         echo $this->session->flashdata('email_sent'); 
         echo form_open('/Email_controller/send_mail'); 
      ?> 
		
      <input type = "email" name = "email" required /> 
      <input type = "submit" value = "SEND MAIL"> 
		
      <?php 
         echo form_close(); 
      ?> 
   </body>
	
</html>변경하십시오. routes.php 파일 application/config/routes.php 파일 끝에 다음 줄을 추가하십시오.
$route['email'] = 'Email_Controller';다음 링크를 방문하여 위의 예를 실행하십시오. yoursite.com을 사이트 URL로 바꿉니다.
http://yoursite.com/index.php/email