2016-11-23 5 views
0

Как использовать пользовательский класс в Laravel без создания объекта new Class()?Как использовать пользовательский класс в Laravel?

В образце, у меня есть класс Exception я включаю это вроде как:

use App\Exception 

После того как в пользовательском классе User я могу сделать:

use App\Exception 

class User { 

    public function check(Exception $e) { 
     // 
    } 

} 

Правильно ли это?

Или мне нужно создать объект $e = new Exception() в конструкторе?

В чем разница между этими инициализациями?

+0

Вы можете использовать контейнерный сервис. – TheFallen

+2

, если вам нужно спросить «правильно», вы, вероятно, не пробовали. Идите и попробуйте сами - вернитесь с реальной проблемой/ошибкой. Фрагмент вовсе не кажется неправильным. Однако я не уверен, что вы делаете то, что вы на самом деле хотите сделать. В настоящее время единственное, что у вас есть, это функция, которая ожидает, что объект класса Exception станет первым параметром. Так что да, это действительно. Но в какой-то момент вам нужно будет создать это исключение, чтобы вы могли передать его функции. –

ответ

0

Вы можете использовать App::abort() для HttpExceptions.

Вы хотите вернуть код статуса не-200 обратно пользователю, указав, что запрос не был успешным.

Например:

abort(403, 'Unauthorized action.'); 

См documentation и this resource

Смежные вопросы