PHP를 사용하여 유니코드 및 utf8을 변환하는 방법: 우선 [4-6] 바이트 인코딩을 고려할 필요가 없으며 4바이트 이상의 [utf-8] 문자가 나타나면 직접 인코딩할 수 있습니다. 무시되거나 잘못된 문자로 변환됩니다. 유니코드 엔터티 형식일 수 있으며 코드는 [$utf8char = "{$c};"]입니다.
PHP를 사용하여 유니코드와 utf8을 변환하는 방법:
유니코드 인코딩은 utf-8 및 gb 시리즈 인코딩(gb2312, gbk, gb18030) 변환의 기초입니다. 하지만 직접 utf를 만들 수도 있습니다. -8을 이들 인코딩의 비교표로 하는데, utf-8의 변수 인코딩이 불확실하기 때문에 이렇게 하는 사람이 거의 없기 때문에 일반적으로 유니코드와 gb 인코딩의 비교표를 사용하는데, 유니코드(UCS-2)가 사실상 기본이다 utf-8 인코딩은 단지 그 구현일 뿐입니다:
유니코드 기호 범위 | UTF-8 인코딩 방법
u0000 0000 - u0000 007F |
/* * 参数 $c 是unicode字符编码的int类型数值,如果是用二进制读取的数据,在php中通常要用 hexdec(bin2hex( $bin_unichar )) 这样转换 */ function uni2utf8( $c ) { if ($c < 0x80) { $utf8char = chr($c); } else if ($c < 0x800) { $utf8char = chr(0xC0 | $c >> 0x06).chr(0x80 | $c & 0x3F); } else if ($c < 0x10000) { $utf8char = chr(0xE0 | $c >> 0x0C).chr(0x80 | $c >> 0x06 & 0x3F).chr(0x80 | $c & 0x3F); } //因为UCS-2只有两字节,所以后面的情况是不可能出现的,这里只是说明unicode HTML实体编码的用法。 else { $utf8char = "&#{$c};"; } return $utf8char; }
현재 환경에서는 utf-8을 문자 집합으로 간주할 수 있습니다. == 유니코드(UCS-2)이지만 이론적으로 주요 문자 집합 관계의 포함 관계는 다음과 같습니다.
utf-8 > unicode(UCS-2) > gb18030 > gbk > gb2312
따라서 인코딩이 올바른 경우:
gb2312 => gbk => gb18030 => unicode(UCS-2) => utf-8
이러한 변환 과정은 기본적으로 표면적으로는 무손실이지만, 반대로
utf-8 => unicode(UCS-2) => gb18030=> gbk => gb2312
변환 과정에서 인식할 수 없는 문자가 있을 가능성이 매우 높으므로 utf-8 인코딩 시스템을 사용하는 경우에는 쉽게 역방향을 수행하지 않도록 하세요. . 인코딩을 변환하는 작업입니다.
관련 학습 권장 사항:초보부터 마스터까지 PHP 프로그래밍
위 내용은 PHP를 사용하여 유니코드와 utf8을 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!