你不知道的PHP
PHP 刘宇帅 6年前 阅读量: 1519
array的key可以是Integer、string类型。其他类型的key会进行转化
- 包含有合法整型值的字符串会被转换为整型。例如键名 "8" 实际会被储存为 8。但是 "08" 则不会强制转换,因为其不是一个合法的十进制数值。
- 浮点数也会被转换为整型,意味着其小数部分会被舍去。例如键名 8.7 实际会被储存为 8。
- 布尔值也会被转换成整型。即键名 true 实际会被储存为 1 而键名 false 会被储存为 0。
- Null 会被转换为空字符串,即键名 null 实际会被储存为 ""。
- 数组和对象不能被用为键名。坚持这么做会导致警告:Illegal offset type。
函数
- 函数名是大小写无关的(变量名是区分大小写的),不过在调用函数的时候,使用其在定义时相同的形式是个好习惯
- PHP 5.6+ 支持在用户自定义函数中支持可变数量的参数列表
<?php function sum(...$numbers) { $acc = 0; foreach ($numbers as $n) { $acc += $n; } return $acc; } echo sum(1, 2, 3, 4); ?>
PHP7.0之前list的赋值是相反的(只影响数组赋值的方式)。。
这个只能怪我是15年毕业的,一毕业就是直接用的PHP7.0对7.0以前的版本真是了解甚少~ 相关变更见官网版本7.0变更