ShNURoK писал(а):Понял, то есть нормально для контроллера такие проверки устраивать?
это такой же метод как и login
ShNURoK писал(а):Кроме проверки, еще и данные может быть надо какие получить для view.
$userService->findById($id);
ShNURoK писал(а):А не знаете, где можно почитать, что можно размещать в контроллере, а что не следует?
бизнес-логику не размещайте и все.
ShNURoK писал(а):$userService = new UserService($this);
сервис не обязательно вызывается только в контроллере - не надо его туда передавать.
ShNURoK писал(а):$this->userService->login($_POST);
а вот вы проверяете входящий массив на состав всех полей? а зачем вообще передавать массив неизвестного состава? Передавайте объект с известной структурой.
ShNURoK писал(а):Сервис
Код: Выделить всё
public function __construct($listener)
{
$this->listener = $listener;
}
public function login($params)
{
// все что обычно бывает в контреллере
$this->listener->renderLogin($params);
}
...
Это плохой вариант?
сервис не используется только в контроллере. В нем не должно быть рендера.