空合并运算符也可用于假值但不是空值?

时间:2015-06-23 10:43:43

标签: null-coalescing-operator php-7

PHP中新的 null合并运算符肯定是一个很棒的功能,有点类似于JavaScript使用||来获取默认值。

我已经阅读了一些关于此功能的文档和文章,但有些事情对我来说仍然不太清楚。

1。我可以将此运算符与任意数量的操作数一起使用吗?例如,这是否有效?

$a = $p1 ?? $p2;

$b = $r1 ?? $r2 ?? $r3 ?? $r4 ?? $r5;

2。什么是虚假值,这些值不为空?

$test = false ?? 0 ?? 'test'; - 现在$test会是什么?如果它不能与null以外的虚假值一起使用,我们怎样才能实现,它就像JavaScript的||一样?

1 个答案:

答案 0 :(得分:1)

我创建了this来回答你的问题。

总之

  1. 操作符可以链接,它将返回链中设置的第一个元素,而不是null。

  2. 根据documentation,它return the result of its first operand if it exists and is not NULL, or else its second operand。因此,如果第一个操作数是false,它将返回false