当前位置:Gxlcms > PHP教程 > 字符串长度问题

字符串长度问题

时间:2021-07-01 10:21:17 帮助过:15人阅读

vardump打印一字符串
string(14) "00107042012"
获取到的字符串长度怎么是14
明明是11个数字啊!
为什么?


回复讨论(解决方案)

你的字符串有前有三个特殊字符(+BOM)



看看两个输出就知道了。


那三个特殊字符的ascii码239,187,191就是BOM头的 EF BB BF
';$str = '00107042012';$str1 = '00107042012';echo 'str:
';for($i=0,$len=strlen($str);$i<$len;$i++){ echo ord(substr($str,$i,1)).'
';}echo '
str1:
';for($i=0,$len=strlen($str1);$i<$len;$i++){ echo ord(substr($str1,$i,1)).'
';}?>


str:2391871914848494855485250484950str1:4848494855485250484950


可以使用程序去掉。

你的字符串有前有三个特殊字符(+BOM)



看看两个输出就知道了。


那三个特殊字符的ascii码239,187,191就是BOM头的 EF BB BF
';$str = '00107042012';$str1 = '00107042012';echo 'str:
';for($i=0,$len=strlen($str);$i<$len;$i++){ echo ord(substr($str,$i,1)).'
';}echo '
str1:
';for($i=0,$len=strlen($str1);$i<$len;$i++){ echo ord(substr($str1,$i,1)).'
';}?>


str:2391871914848494855485250484950str1:4848494855485250484950


可以使用程序去掉。



问题解决了,感谢版主的回复~下次知道了,转成ascii码输出就好了.么么哒

人气教程排行