我在一个方法中有这段代码:
$remainder_payment = $this->product_info['remainder_payment'] ?: 0;
我得到这个错误:
未定义索引:remainder_payment in…
在我的脑海中,我设置$remainder_payment为$this->product_info['remainder_payment']如果$this->product_info['remainder_payment']不为假,否则$remainder_payment = 0。
在手册中查看这个表,如果一个项目在undefined中,那么它应该计算为false,但是我得到了一个错误。
您是对的,三元操作符本质上是一个if语句,并且像if语句一样,如果您试图访问不存在的数组键,它将抛出警告。
你想要的是空合并算子??
$remainder_payment = $this->product_info['remainder_payment'] ?? 0;