当前位置: 代码迷 >> PHP >> $array[零]与$array['0']的区别
  详细解决方案

$array[零]与$array['0']的区别

热度:26   发布时间:2016-04-28 17:55:54.0
$array[0]与$array['0']的区别
如标题 $array0=$array[0]与$array0=$array['0']都可以得到数组的第一个值  求区别
------解决思路----------------------
引用:
只要是数字,就没有数值类型和字符类型的区别
var_dump(3.2 == '3.2'); //true



Quote: 引用:

Quote: 引用:

因为都是数字 0,所以没有区别


如果换成1 2  3 之类的呢??


那个返回True,是因为自动转换数据类型来比较了,如果你换成用===来对比,返回的就是false了。

php是弱类型的语言,在运算的时候会自动转换为合适的数据类型。
刚才做了下测试,得出了这样的结论:
带引号的整数字符串会自动转换成数字,做为整数索引,非整数数字则不会转换,仍旧按字符串索引来对待。
不带引号的数字,非整数的会取整后做为整数索引

另外,未变定义为常量的字符串做为索引,不带引号的话,虽然能得到正确的结果,但是会有警告错误。


  相关解决方案