PHP - Laravel:使用三元运算符有条件地扩展刀片模板

时间:2018-02-03 13:31:44

标签: php laravel blade

我正在尝试以这样的方式组合我的刀片,以至于我没有很多逻辑。因此,在确定应该扩展哪个模板之前,我需要检查一些变量。

问题是无论是否设置了$ user,layouts.identified总是会被扩展。这会导致此错误:尝试获取非对象的属性,因为它尝试访问并非总是存在的$ user对象。

没有其他错误,所以我猜语法还可以。

我在这里做错了什么?

@extends(isset($user) ? 'layouts.identified' : 'layouts.anonymous', [
    'a' => $a,
    'b' => $b,
    'c' => $c,
    'd' => $d,
    'e' => $e,
]);

编辑:错字

1 个答案:

答案 0 :(得分:0)

您可以使用Auth Facade -

代替变量
@extends(\Auth::check() ? 'layouts.identified' : 'layouts.anonymous' , ['a' => $a, 'b' => $b,'c' => $c,'d' => $d,'e' => $e])

请检查错误是否仍然存在。