欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

求解一个php数组的用法

程序员文章站 2024-01-19 19:37:34
...
看到一句别人写的代码,类似是这样的:
$a = array();$a['key'] = $a['key'] + 1;var_dump($a);

打出来后看,代码中的1变成了数组a的值。。
这个。。从来没这样用过。。


回复讨论(解决方案)

累加,类似于a+=1;

是数组。。。

等价于 $a['key'] = null + 1;

等价于 $a['key'] = null + 1;



不懂。。


等价于 $a['key'] = null + 1;



不懂。。
哪里不懂

等价于 $a['key'] = null + 1; 正解

$a = array();
$a['key'] = $a['key'] + 1; // 这个时候 $a['key']是不存在的,用isset($a['key']) 返回false,所以 $a['key'] = null
$a['key'] + 1 相当于 null +1 因为php会自动将null转为0进行算术运算,所以就是0+1 ,最后$a['key'] = 1了

var_dump($a);

最好不要这样写,php是弱类型语句,想要执行效率高点,最好能事先声明类型,不是让系统去识别



等价于 $a['key'] = null + 1;



不懂。。
哪里不懂
哦。。我知道了。是我理解错了