来源:4-7 PHP-务必使用带引号字符串做键值

Lamper1021

2014-10-19 14:50

当数组的下班是小数的时候,下标会变成什么???

写回答 关注

1回答

  • sophia_yu
    2014-10-20 11:01:47

    关于数组的下标也就是key值的数据类型转换,有以下说明:

    key 可以是 integer 或者 string。

    此外 key 会有如下的强制转换:

    1、包含有合法整型值的字符串会被转换为整型。例如键名 "8" 实际会被储存为 8。但是 "08" 则不会强制转换,因为其不是一个合法的十进制数值。 

    2、浮点数也会被转换为整型,意味着其小数部分会被舍去。例如键名 8.7 实际会被储存为 8。 

    3、布尔值也会被转换成整型。即键名 true 实际会被储存为 1 而键名 false 会被储存为 0。 

    4、Null 会被转换为空字符串,即键名 null 实际会被储存为 ""。 

    5、数组和对象不能被用为键名。坚持这么做会导致警告:Illegal offset type。

    此外,如果在数组定义中多个单元都使用了同一个键名,则只使用了最后一个,之前的都被覆盖了。

    建议做个试验执行看看结果。 


性能优化之PHP优化

带你打造高速高效的PHP项目,由浅入深带你进一步探索php优化项目

37108 学习 · 109 问题

查看课程

相似问题

回答 1

回答 2

回答 1

回答 1