php – mb_strpos vs strpos,有什么区别?

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – mb_strpos vs strpos,有什么区别?脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
是的我知道.当我们使用多字节char时,我们应该使用Mb_ *函数.但是当我们使用strpos时?
我们来看看这段代码(保存在utf-8中)
var_dump(strpos("My symbol utf-8 is the €.","\xE2\x82\xAC")); // int(23)

使用mb_strpos有区别吗?是不是让这项工作成绩相同?毕竟,不是strpos寻找一个字符串(多个字节)?是否有理由使用strpos?

对于UTF-8,匹配字节序列与匹配字符序列完全相同.

所以他们都会在完全相同的点找到针,但是mb_strpos在针之前计算完整的UTF-8字节序列,其中strpos计算任何字节.因此,如果您的字符串具有另一个多字节UTF-8序列,则结果会有所不同:

strpos("My symbolö utf-8 is the €.","€") !== mb_strpos("My symbolö utf-8 is the €.","€","UTF-8")

但:

strpos("My symbol utf-8 is the €.","€") === mb_strpos("My symbol utf-8 is the €.","UTF-8")

脚本宝典总结

以上是脚本宝典为你收集整理的php – mb_strpos vs strpos,有什么区别?全部内容,希望文章能够帮你解决php – mb_strpos vs strpos,有什么区别?所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。