有没有更好的方法在PHP / Laravel中编写此语句?

时间:2018-06-22 11:53:41

标签: php laravel

我一次又一次地进行这种测试,我觉得有一种更优雅的方式来进行测试。

(isset($country['capital'])) ? $country['capital'] : null

你能帮我吗?

2 个答案:

答案 0 :(得分:3)

您可以在Laravel Blade template中使用or运算符

$country['capital'] or null 

在php 7中,您可以使用空合并运算符

$country['capital'] ?? null

From PHP docs

  

已添加空合并运算符(??)作为语法糖   对于需要结合使用三元数的常见情况   isset()。如果它存在且不为NULL,则返回其第一个操作数;否则返回第一个操作数。   否则,它将返回其第二个操作数。

答案 1 :(得分:1)

自PHP 7起,您就可以

$country['capital'] ?? null;