if - else在laravel框架刀片模板中不起作用

时间:2014-12-22 13:36:51

标签: php if-statement laravel blade

我的问题是,我有Laravel刀片模板的页面。 如果用户已登录,则应从主布局扩展我的页面。 如果用户没有登录,我的页面应该从另一个主布局扩展。

但我的if-else声明无效

 <?php 
 if (Auth::check()){?>
 @extends('layouts.outside');
 <?php } else{ ?>
     @extends('layouts.admin');
 <?php }?>

我还尝试了刀片if-else版本如下:

@if (Auth::check())
 @extends('layouts.outside')
@else
 @extends('layouts.admin')
@endif

它也不起作用。每次在语句中为true或false时,if和else语句中的块都会运行一次。因为没有别的。 我的意思是每当它调用layouts.outside一次并且只是底部时,同样的页面再次加载layouts.outside,无论用户是否登录都无关紧要。

由于

2 个答案:

答案 0 :(得分:8)

@extends(Auth::user() ? 'layouts.outside' : 'layouts.admin');

答案 1 :(得分:1)

<?php
if (Auth::check()){
Blade::extends('layouts.outside');
<?php } else 
extends('layouts.admin');
}?>

你错过了{在别的地方 也为什么php标签删除它

     <?php
        if (Auth::check()){
        Blade::extends('layouts.outside');
        } else{ 
        extends('layouts.admin');
        }
     ?>