2017-06-01 51 views
0

我想@if & @else使用一個控制器內,例如:Laravel 5.4使用的if/else裏面一個控制器

public function deleteCharacter ($char_delete_id) 

    { 

@if (Auth::user()->id == $delCharacterUserID) 
$deleteSuccess = 1; 

      return redirect('/characters')->with('deleteSuccess', $deleteSuccess); 


@else 
     $deleteSuccess = 0; 

     return redirect('/characters')->with('deleteSuccess', $deleteSuccess); 

    @endif 

這引發錯誤:

FatalErrorException in CharacterController.php line 40: syntax error, unexpected 'if' (T_IF)

+0

請大家快看看[PHP的if語句(http://php.net/manual/en/control-structures.if.php)你是在PHP語法和刀片語法 – hassan

+0

之間混合使用if(){...} else {...}。我認爲@如果是刀片概念 – JYoThI

回答

3

在一個控制器,只需使用normal PHP syntax,而不是blade syntax。所以用下面的代碼替換你的代碼:

public function deleteCharacter ($char_delete_id) 
{ 
    if (Auth::user()->id == $delCharacterUserID) { 
     $deleteSuccess = 1; 

    } else { 
     $deleteSuccess = 0; 
    } 
    return redirect('/characters')->with('deleteSuccess', $deleteSuccess); 
} 

它應該工作!控制器是一個PHP文件,所以在其中寫入PHP。

1

優化你的代碼一樣,

public function deleteCharacter ($char_delete_id) 
    { 
     $deleteSuccess = Auth::user()->id == $delCharacterUserID?1:0;  
     return redirect('/characters')->with('deleteSuccess', $deleteSuccess); 
    } 
相關問題