>  기사  >  백엔드 개발  >  iconv와 mb_convert_encoding의 차이점에 대한 변환 패턴 PHP 변환 문자열 인코딩 설명

iconv와 mb_convert_encoding의 차이점에 대한 변환 패턴 PHP 변환 문자열 인코딩 설명

WBOY
WBOY원래의
2016-07-29 08:47:12905검색

iconv — 문자열을 요청된 문자 인코딩으로 변환(PHP 4 >= 4.0.5, PHP 5)
mb_convert_encoding — 문자 인코딩 변환(PHP 4 >= 4.0.6, PHP 5)
사용법:
string mb_convert_encoding ( string str, string to_encoding [, mix from_encoding] )
먼저 mbstring 확장 라이브러리를 활성화해야 합니다. php.ini에서
string iconv 앞에 있는 ; Extension=php_mbstring.dll을 제거하세요. in_charset, string out_charset, string str )
참고:
변환할 인코딩을 지정하는 것 외에도 두 번째 매개변수는 두 개의 접미사를 추가할 수도 있습니다: //TRANSLIT 및 //IGNORE,
여기서:
//TRANSLIT는 직접 변환할 수 없는 문자를 하나 이상의 대략적인 문자로 자동 변환합니다.
//IGNORE는 변환할 수 없는 문자를 무시하고 기본 효과는 첫 번째 잘못된 문자를 자르는 것입니다.
실패 시 변환된 문자열을 반환하거나 FALSE를 반환합니다.
사용:
1. 무시 매개변수가 없으면 문자 "-"를 gb2312로 변환할 때 iconv에서 오류가 발생하는 것으로 나타났습니다. 캐릭터가 저장되지 않습니다. 어쨌든 이
"-"는 성공적으로 변환되지 않고 출력될 수 없습니다. 또한 mb_convert_encoding에는 이 버그가 없습니다.
2. mb_convert_encoding은 내용에 따라 자동으로 식별되는 여러 입력 인코딩을 지정할 수 있지만 다음과 같이 실행 효율성이 iconv보다 훨씬 나쁩니다. >mb_convert_encoding($str,"euc -jp","ASCII,JIS,EUC-JP,SJIS,UTF-8");
"ASCII,JIS,EUC-JP,SJIS, UTF-8"을 다른 순서로
3. 일반적인 상황에서는 iconv를 사용합니다. mb_convert_encoding 함수는 원래 인코딩을 확인할 수 없거나 변환 후 iconv가 정상적으로 표시되지 않는 경우에만 사용됩니다.
from_encoding은 다음으로 지정됩니다. 변환 전의 문자 코드 이름은 배열 또는 문자열일 수 있습니다 - 쉼표로 구분된
열거 목록. 지정하지 않으면
$str = mb_convert_encoding($str, "UCS-2LE" , "JIS, eucjp-win, sjis-win");
$str = mb_convert_encoding($str, "EUC-JP', "auto");
예:
$content = iconv(" GBK", "UTF-8" , $content);
$content = mb_convert_encoding($content, "UTF-8", "GBK");
위 내용은 변환 패턴의 내용을 포함하여 변환 패턴 PHP 변환 문자열 인코딩 iconv와 mb_convert_encoding의 차이점을 소개합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.