在javascript中,我可以写出类似的内容:
var result = Whatever() || [];
如果Whatever()
返回null
或undefined
,则result
变量将包含一个空数组。
PHP中是否有类似的快捷方式?这只会返回false:
$result = Whatever() || array();
我可以使用三元运算符,但由于有一个函数调用,我需要创建一个额外的变量,如下所示:
$whatever = Whatever();
$result = $whatever ? $whatever : array();
这看起来很难看,也不太可读。有更好的模式吗?
答案 0 :(得分:2)
停止在互联网上阅读旧的PHP帖子。你可以轻松做到
$result = Whatever() ?: array();
PHP 5.3 +
不,不会被叫Whatever()
两次。
<强> Fiddle 强>