Multibyte mb_convert_encoding

(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)

mb_convert_encoding — 문자열을 한 문자 인코딩에서 다른 문자 인코딩으로 변환


설명

mb_convert_encoding(array|string $string, string $to_encoding, array|string|null $from_encoding = null): array|string|false

stringfrom_encoding 또는 현재 내부 인코딩에서 to_encoding으로 변환합니다. string이 배열이면 모든 문자열 값이 재귀적으로 변환됩니다.


매개변수

string
변환할 문자열 또는 배열입니다.
to_encoding
원하는 결과 인코딩입니다.
from_encoding
string을 해석하는 데 사용되는 현재 인코딩입니다. 다중 인코딩은 배열 또는 쉼표로 구분된 목록으로 지정할 수 있으며, 이 경우 mb_detect_encoding()과 동일한 알고리즘을 사용하여 올바른 인코딩을 추측합니다.

from_encodingnull이거나 지정되지 않은 경우 mbstring.internal_encoding 설정이 설정되면 사용되며, 그렇지 않으면 default_charset 설정이 사용됩니다.

to_encodingfrom_encoding의 유효한 값은 지원되는 인코딩을 참조하세요.


반환 값

성공 시 인코딩된 문자열 또는 배열, 실패 시 false입니다.


오류/예외

PHP 8.0.0부터 to_encoding 또는 from_encoding의 값이 유효하지 않은 인코딩이면 ValueError가 발생합니다. PHP 8.0.0 이전에는 E_WARNING이 대신 발생했습니다.


변경 로그

Version Description
8.0.0 to_encoding이 잘못된 인코딩으로 전달되면 mb_convert_encoding()이 이제 ValueError를 발생시킵니다.
8.0.0 from_encoding이 잘못된 인코딩으로 전달되면 mb_convert_encoding()이 이제 ValueError를 발생시킵니다.
8.0.0 from_encoding은 이제 nullable입니다.
7.2.0 이제 이 함수는 배열을 string로 받아들입니다. 이전에는 문자열만 지원되었습니다.

Examples

예제 #1 mb_convert_encoding() 예제

                  
<?php
/* Convert internal character encoding to SJIS */
$str = mb_convert_encoding($str, "SJIS");

/* Convert EUC-JP to UTF-7 */
$str = mb_convert_encoding($str, "UTF-7", "EUC-JP");

/* Auto detect encoding from JIS, eucjp-win, sjis-win, then convert str to UCS-2LE */
$str = mb_convert_encoding($str, "UCS-2LE", "JIS, eucjp-win, sjis-win");

/* If mbstring.language is "Japanese", "auto" is expanded to "ASCII,JIS,UTF-8,EUC-JP,SJIS" */
$str = mb_convert_encoding($str, "EUC-JP", "auto");
?>
                  
                

기타

  • mb_detect_order() - 문자 인코딩 감지 순서 설정/가져오기
  • UConverter::transcode() - 문자열을 한 문자 인코딩에서 다른 문자 인코딩으로 변환
  • iconv() - 문자열을 한 문자 인코딩에서 다른 문자 인코딩으로 변환