문제

우리 모두와 마찬가지로 Multibyte 줄을 처리하는 것은 PHP에서 쉽지 않습니다. 예를 들어 다음 문자열의 길이를 얻고 싶습니다. ä

strlen('ä'); // 2, because ä equals 2 bytes
mb_strlen('ä', 'UTF-8'); // 1
iconv_strlen('ä', 'UTF-8'); // 1

어떤 기능을 사용해야합니까? mb_* 또는 iconv_*? 왜요? 인코딩이 UTF-8로 제한되지 않을 수 있음을 고려합니다.

미리 thx!

도움이 되었습니까?

해결책

이 PowerPoint 프레젠테이션을 살펴보십시오.

http://www.nyphp.org/content/presentations/smallworld/april2006-nyphp-presentation.ppt

간단히 말해서 : ICONV는 더 많은 인코딩을 지원하지만 휴대 성이 덜합니다.

프레젠테이션에서 :

PHP는 두 가지 확장에서 멀티 바이트를 지원합니다 : Iconv 및 MBstring

  • ICONV는 외부 라이브러리를 사용합니다 (더 많은 인코딩을 지원하지만 휴대용이 적음)
  • MBString에는 라이브러리에 PHP가 번들되어 있습니다 (인코딩은 적지 만 휴대하기 쉬운)
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top