我在网上看到一个小的 php 测验,其中包含以下代码:$somevalue[[ 2 <=['-']=> 2][1]] = $somestring;我的问题是,作业前的部分是做什么的?$somevalue[[ 2 <=['-']=> 2][1]]<=看起来像比较运算符,但在这种情况下,它2与'-'?
2 回答
LEATH
TA贡献1936条经验 获得超6个赞
PHP 的数组初始化语法如下所示:
$arr = [ key => value ];
所以在这部分:
2 <=['-']=> 2
'key' 是表达式的结果2 <= ['-']
,根据本页,它的计算结果为true
(数组总是大于您所比较的值,除非它是另一个数组)。因为 PHP 数组键要么是整数要么是字符串,所以布尔结果被隐式转换为 integer 1
,所以你最终得到:
1 => 2
所以简化表达式:
[ 1 => 2 ][1]
将计算我们刚刚创建的数组的第二个元素(PHP 数组是基于 0 的),因此这将简化为:
2
所以最后我们得到了:
$somevalue[2] = $somestring;
- 2 回答
- 0 关注
- 176 浏览
添加回答
举报
0/150
提交
取消