php - mail 함수

Development/PHP 2012. 7. 11. 15:03


이번시간에는 메일을 보내는 명령어 mail() 에 대해 배워보도록 하겠습니다.

mail() 함수는 이메일을 보내는 함수로 기본적인 사용방법은 다음과 같습니다.

mail(받는이메일주소, 제목, 내용)

위 형식으로 사용을 하면 메일이 보내집니다.

그런데 보내는 사람 같은것은 어디에 적어줘야할까요?

mail 함수의 인자에서 내용 다음에 메일의 header 를 넣어줍니다.

mail(받는이메일주소, 제목, 내용, header)

이 header 에 메일의 언어셋이나 보내는 사람 참조등의 여러 정보를 넣을수 있습니다.

아래 예문을 보면서 설명드리겠습니다.(PHP 함수 검색에 나오는 예제입니다.)
<?php
// 받는 사람이 여럿일 경우 , 로 늘려준다.
$to  = 'aidan@example.com' . ', '; // note the comma
$to .= 'wez@example.com';

// 제목
$subject = 'Birthday Reminders for August';

// 내용
$message = '
<html>
<head>
  <title>Birthday Reminders for August</title>
</head>
<body>
  <p>Here are the birthdays upcoming in August!</p>
  <table>
    <tr>
      <th>Person</th><th>Day</th><th>Month</th><th>Year</th>
    </tr>
    <tr>
      <td>Joe</td><td>3rd</td><td>August</td><td>1970</td>
    </tr>
    <tr>
      <td>Sally</td><td>17th</td><td>August</td><td>1973</td>
    </tr>
  </table>
</body>
</html>
';

// HTML 내용을 메일로 보낼때는 Content-type을 설정해야한다
$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=euc-kr' . "\r\n";

// 추가 header

// 받는사람 표시
$headers .= 'To: Mary <mary@example.com>, Kelly <kelly@example.com>' . "\r\n";


// 보내는사람
$headers .= 'From: Birthday Reminder <birthday@example.com>' . "\r\n";

// 참조
$headers .= 'Cc: birthdayarchive@example.com' . "\r\n";

// 숨은참조
$headers .= 'Bcc: birthdaycheck@example.com' . "\r\n";

// 메일 보내기
mail($to, $subject, $message, $headers);
?>

주석을 보시면 알겠지만 위와 같은 방식으로 메일을 보낼 내용과 header 등을 설정해서 보낼수가 있습니다.

그러면 다음시간부터 예약 프로그램에 대해 배워보도록 하겠습니다.


출처 - http://handsome.pe.kr/105








메일 함수 
<?php 
mail('recipient@toodtood.nettoodtoodone@toodtood.netmetoo@toodtood.net', 
'제목', 
'내용이다.',  
"To: The Receiver <recipient@toodtood.net>\\n" . 
"From: The Sender <sender@toodtood.net>\\n" .  
"cc: Interested <toodtoodone@toodtood.net>\\n" .    
"Bcc: Me Too <metoo@toodtood.net>\\n" .    
"X-Mailer: PHP 4.x"); 
?> 


출처 - http://www.nuno21.net/bbs/board.php?bo_table=php&wr_id=16&sfl=&stx=&sst=wr_good&sod=desc&sop=and&page=5








메일 함수를 보시면 
mail('받는사람','제목','내용','기타추가헤더'); 

이렇게 4개의 인자를 전달해 주잖아요.. 
$to = 'mail@mail.com'; 
$add = 'one@mail.com,two@mail.com,three@mail.com,four@mail.com'; 

$to 는 받는 사람 그리고, $add 는 같이 받을 사람들메일 주소.. 

mail($to,"메일 제목","참조메일연습","Cc:$addn"); 
혹은 
mail($to,"메일 제목","참조메일연습","Bcc:$addn"); 
이렇게 메일헤더에 Cc 혹은 Bcc 를 추가해 주면 여러명이 같은메일을 
받아볼수 있습니다.. 

Cc 와 Bcc 의 차이점은 

Cc 로 전송할 경우 아웃룩 익스프레스에서 보면 받는사람 주소란에 
모든 이메일주소가 표시됩니다..더불어 회신을 하게 되면 
그 메일 주소에 있는 모든 이에게 전달 되겠죠.. 

때문에 가급적이면 Bcc (아웃룩에선 숨은참조라 불립니다) 의 형태로 
전송해 주는게 좋습니다... 

[출처] 마루아라










'Development > PHP' 카테고리의 다른 글

php - include vs require  (0) 2013.01.08
php - date() 오류  (0) 2012.07.21
php - mail 함수  (1) 2012.07.11
PHP Framework - CodeIgniter  (0) 2012.05.07
PHP framework 종류  (0) 2012.05.07
php 오류해석기  (0) 2012.02.03
Posted by linuxism

댓글을 달아 주세요

  1. Readiz 2014.01.24 23:32  댓글주소  수정/삭제  댓글쓰기

    참고 많이 됐습니다