首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

这样也行?该怎么解决

2012-06-01 
这样也行?所有字母的字符串 和 0 都是恒等的?求解释PHP codeif(e 0){echo Yes}#result:#Yes[解决

这样也行?
所有字母的字符串 和 0 都是恒等的?求解释

PHP code
if("e" == 0){    echo "Yes";}#result:#Yes


[解决办法]
"e" 不是变量 在内存中什么都没有.......
[解决办法]
this way :
PHP code
echo "e" === 0;
[解决办法]
php会自动转换变量的类型,int和string对比那么会将string转成int,如此一来所有字符串都是0,那么结果也就确定了,你可以用===全等来判断
[解决办法]
这样解决更清楚:

echo intval('e');#转换不成功,默认0(print:0)
echo intval('1ds2e');#字符串中有整数出现,则取第一次出现的位置,转换成int (print:1)

探讨

this way : PHP code
echo "e" === 0;

[解决办法]

这句说法是错的,“字符串中有整数出现,则取第一次出现的位置,转换成int (print:1) ”

应该是这样:

字符串中有整数出现,并且整数在字符串的起始位置,则取出,转换成int

探讨

这样解决更清楚:

echo intval('e');#转换不成功,默认0(print:0)
echo intval('1ds2e');#字符串中有整数出现,则取第一次出现的位置,转换成int (print:1)

引用:

this way : PHP code
echo "e" === 0;

热点排行