1 php nested execution null-coalescing-operator php-7
我正在使用PHP 7.2.0
我已经了解了空合并运算符(??)的正常基本用法,但是我无法理解嵌套空合并运算符(??)时的执行流程和功能。
请考虑下面的代码示例,并逐步向我解释执行流程。
<?php
$foo = null;
$bar = null;
$baz = 1;
$qux = 2;
echo $foo ?? $bar ?? $baz ?? $qux; // outputs 1
?>
Run Code Online (Sandbox Code Playgroud)
我认为,如果您在空合并运算符的单个步骤周围添加括号,则您的示例将变得更加清晰。
echo ($foo ?? ($bar ?? ($baz ?? $qux)));
Run Code Online (Sandbox Code Playgroud)
基本上与从左到右执行相同。
空合并运算符是右关联的。这意味着操作从右到左分组。即,表达式a ?? b ?? c的计算结果为a ?? (b ?? c)。
| 归档时间: |
|
| 查看次数: |
356 次 |
| 最近记录: |