개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.06.20 22:14

mb_encode_mimeheader 함수에서 'subject' 인수로 전달하는 문자열을 제대로 인코딩하는 방법을 알려주세요.

목록
  • 디자인패턴마스터 오래 전 2025.06.20 22:14
  • 62
    1
예를 들어, 한글 문자열을 인코딩할 때는 어떤 옵션을 사용해야 하나요?

아래와 같이 한글 문자열을 인코딩할 때는 어떤 문제가 발생할 수 있는지 알려주세요.

$subject = "한글 문자열";
$encoded_subject = mb_encode_mimeheader($subject, 'UTF-8', 'B');

이러한 경우에는 어떻게 해결할 수 있을까요?

제가 이해한 바에 따라서 올바른 예를 알려주세요.

    댓글목록

    profile_image
    나우호스팅  오래 전



    mb_encode_mimeheader 함수에서 인코딩 옵션은 UTF-8 인코딩을 사용할 때 'Q' 옵션을 사용하는 것이 좋습니다.

    $subject = "한글 문자열";
    $encoded_subject = mb_encode_mimeheader($subject, 'UTF-8', 'Q');

    이러한 옵션을 사용하면 한글 문자열을 올바르게 인코딩할 수 있습니다.

    이러한 옵션을 사용하지 않으면, 한글 문자열을 인코딩할 때는 'B' 옵션을 사용할 수 있습니다.

    $subject = "한글 문자열";
    $encoded_subject = mb_encode_mimeheader($subject, 'UTF-8', 'B');

    그러나, 이 경우 한글 문자열을 인코딩할 때는 '=?UTF-8?B?'와 같은 prefix가 추가되며, 이 prefix를 제거하는 코드를 별도로 작성해야 합니다.

    이러한 prefix를 제거하는 코드는 다음과 같습니다.

    $encoded_subject = preg_replace('/^=?UTF-8?B?/', '', $encoded_subject);
    $encoded_subject = preg_replace('/=?UTF-8?B?$/', '', $encoded_subject);

    이러한 코드를 사용하여 prefix를 제거할 수 있습니다.

    이러한 예를 통해, mb_encode_mimeheader 함수에서 한글 문자열을 올바르게 인코딩하는 방법을 알 수 있습니다.

    2025-06-20 22:15

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 37,340건 / 91 페이지

검색

게시물 검색