PHP에서 mb_encode_mimeheader() 함수는 MIME(Multipurpose Internet Mail Extensions) 헤더에 사용할 문자열을 인코딩할 때 활용됩니다. 이 함수는 주어진 문자열을 MIME 헤더 인코딩 방식에 따라 변환하여, 이메일 헤더에 안전하게 포함될 수 있도록 처리해 줍니다.
문법
string mb_encode_mimeheader(str $string, str $charset, str $transfer_encoding, str $newLine, int $indent)
매개변수
mb_encode_mimeheader() 함수는 다음과 같이 다섯 개의 매개변수를 받습니다.
$string − 인코딩할 문자열입니다. 이 문자열의 인코딩은 반드시 mb_internal_encoding()으로 설정된 내부 인코딩과 동일해야 합니다.
$charset − 문자열이 표현되는 문자셋(charset)의 이름을 지정합니다.
$transfer_encoding − MIME 인코딩 방식을 지정합니다. base64(B) 또는 Quoted-printable(Q) 중 하나를 사용할 수 있으며, 값을 지정하지 않으면 기본적으로 base64(B)가 적용됩니다.
$newLine − mb_encode_mimeheader()가 행 접기(line-folding)를 수행할 때 사용할 줄 끝(EOL) 마커를 지정합니다.
$indent − 첫 번째 줄의 들여쓰기를 위해 사용됩니다.
반환값
ASCII로 표현된 변환된 문자열을 반환합니다.
예제 1
<?php $name = "Online tutorials"; $mbox = "nru"; $doma = "gtin.thu"; $addr = mb_encode_mimeheader($name,"UTF-7","Q")." <".$mbox."@".$doma.">"; echo $addr; ?>
출력 결과
Online tutorials
예제 2
<?php $string = "\xe2\x86\x92"; mb_internal_encoding( "UTF-8"); echo mb_encode_mimeheader($string, 'UTF-8'); ?>
출력 결과
=?UTF-8?B?4oaS?=