作为我们所有的现在,处理多串不是那么容易在PHP.例如,我想要得到的长度以下string: ä

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

其职能我应该使用?该mb_*或iconv_*?为什么?考虑到编码可以不限于UTF-8。

谢谢提前!

有帮助吗?

解决方案

看看这个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