PHP: <?php namespace application\support; use application\models\User; use core\services\Container; class Authorization { private $container; public function __construct(Container $container) { $this->container = $container; } public function check() { if (isset($_SESSION['authorization'])) { if ($user = User::findOneBy('`id` = ? && `token` = ?', $_SESSION['authorization'])) { $this->container->set(User::class, $user); return true; } unset($_SESSION['authorization']); } return false; } } То есть я помещаю данные User::class в контейнер ТОЛЬКО после проверки данных в сессии. А может быть его нужно поместить в контейнер раньше где-то в промежуточном ПО, чтобы данные User::class были доступны не только после того, как их туда поместил класс Authorization (и не пробрасывать в него контейнер )? Может быть это должно быть вот так? PHP: <?php namespace application\support; use application\models\User; class Authorization { private $user; public function __construct(User $user) { $this->user= $user; } public function check() { if (isset($_SESSION['authorization'])) { if ($user) { return true; } unset($_SESSION['authorization']); } return false; } } А?