T. *_*nes 52 php character-encoding special-characters
PHP iconv()和mb_convert_encoding()PHP 之间的区别是什么?一个人表现得更好,更快,等等(例如,使用特定的编码)?在什么情况下,一个人比另一个人更受欢迎?
这是我认为我已经知道的:
的iconv()
mb_convert_encoding()
HTML-ENTITIES,转换为和来自Web十六进制代码.还有其他差异吗?
pel*_*lle 28
iconv()它只是iconv()在运行PHP的系统C库中找到的函数的包装器(除非PHP是使用GNU iconv构建的,在这种情况下使用GNU iconv).因此,性能和功能iconv()取决于您运行PHP的位置以及它的构建方式.
的实施mb_convert_encoding(),在另一方面,被包括在PHP(模块)源.它包含一个名为libmbfl的库,用于处理实际的转换.因此,无论您在何处运行PHP,它的工作方式都相同.这里有一个支持的编码列表:http://php.net/manual/en/mbstring.encodings.php
总而言之,mb_convert_encoding()如果您想支持不同的平台,我想您可以说使用它更可靠.但是,如果您iconv()在Linux上使用(例如),那么它支持更多编码(请参阅参考资料iconv --list).
iconv()显然,功能的相对性能还取决于具体的实现.