在所有php认为是int的地方输入string,都会被强制转换,比如
$a = 'asdfgh';//字符串类型的a</br>
echo $a[2]; //根据php的offset 会输出'd'</br>
echo $a[x]; //根据php的预测,这里应该是int型,那么输入string,就会被intval成为0 也就是输出'a'
如果switch是数字类型的case的判断时,switch会将其中的参数转换为int类型。如下:
$i ="2abc";
switch ($i) {
case 0:
case 1:
case 2:
echo "i is less than 3 but not negative";
break;
case 3:
echo "i is 3";
}
本文探讨了PHP中字符串到整数的自动类型转换机制。通过示例说明了如何在使用数组偏移量和switch语句时,PHP会自动将字符串转换为整数值。这有助于理解PHP的动态类型特性和潜在的程序陷阱。
1810

被折叠的 条评论
为什么被折叠?



