laravel blade三元运算符
{{ isset($name) ? $name : 'Default' }}
我们可以写简短的表格
{{ $name or 'Default' }}
但它在实现时返回布尔值,如:
{{$videos->count() or 'no video' }} //if count return 1 always,
但是这段代码
{{ $videos->count()}} // return 4
如何通过刀片三元运算符中的缩写形式实现这一点
答案 0 :(得分:1)
如果是>您想要显示计数0.否则你想要显示文字。
count()
始终为not null
(0或更高)。所以你想要做的是:
{{$videos->count() > 0 ? $vides->count() : 'no video'}}
答案 1 :(得分:0)
当您使用PHP 7.1时,您可以使用新的Null Coalescing Operator。 所有PHP 7的新功能都可以在文档中找到: http://php.net/manual/en/migration70.new-features.php
您的代码将如下所示:
{{$videos->count() ?? 'no video' }}
文档中有关于运算符的详细说明:
对于需要与isset()一起使用三元组的常见情况,添加了空合并运算符(??)作为语法糖。它返回第一个操作数(如果存在且不为NULL);否则它返回第二个操作数。