2013-06-22 2 views
0

전체 try catch 블록에 대해 혼란스러워합니다. catch 블록을 실행하는 예외가 throw됩니다 이해하지만 try 블록 안에 return 사용에 관한 질문이 있습니다.try catch 블록 이해

try { 

    //other logic is here 

    //this is in laravel and sends the user back and should stop operation 
    if (foo != bar) { 
     return Redirect::back()->with_message('This auction is closed.', 'error'); 
    } 
} catch (Exception $e) { 
    return $e->getMessage(); 
} 

제 질문은 try 블록 내부에서 작업을 끝내시겠습니까? 반환 값이 무시되거나 예외로 간주되는 코드에서 오류가 발생합니까? 다시 말하지만, 저는 이것에 대해 아주 새로운 것입니다.

답변

1

네, 그 코드를 작성하는 것은 완전히 유효한 방법입니다.

제어 후 계속 실행됩니다 코드가 try 또는 catch 블록이 마지막으로 다른 언어에서 finally 블록을 채택 PHP 5.5에 종료, 항상 후 실행해야합니다 정리 코드를 실행하는 데 사용할 수있는 하나의 경우 try 예외가 발생했는지 여부에 관계없이 블록이 수행합니다.

하지만 5.5는 사용하지 않았을 것입니다.

1

예. 괜찮습니다. 어떤 이유인지 Redirect :: back 또는 with_message 메서드가 예외를 발생시키는 경우 대신

오류 메시지를 반환합니다.