Класс ControllerFactory
Метод фабрики для создания контроллеров для запроса.
Краткое описание свойств
- $container protected
Cake\Core\ContainerInterface - $controller protected
Cake\Controller\Controller
Краткое описание методов
-
__construct() public
Конструктор
-
coerceStringToType() protected
Преобразует строковый аргумент в примитивный тип.
-
create() public
Создаёт контроллер для данного запроса.
-
getActionArgs() protected
Получить аргументы для вызова действия контроллера.
-
getControllerClass() public
Определение имени класса контроллера на основе текущего запроса и параметра контроллера
-
handle() public
Вызвать действие.
-
invoke() public
Вызов действия контроллера и методов обертки.
-
missingController() protected
Выбрасывает исключение, когда контроллер отсутствует.
Подробное описание методов
__construct() public
__construct(Cake\Core\ContainerInterface $container)
Конструктор
Параметры
-
Cake\Core\ContainerInterface$container Контейнер для создания контроллеров.
coerceStringToType() protected
coerceStringToType(string $argument, ReflectionNamedType $type): array|string|float|int|bool|null
Преобразует строковый аргумент в примитивный тип.
Параметры
-
string$argument Аргумент для преобразования
-
ReflectionNamedType$type Тип параметра
Возвращает
array|string|float|int|bool|nullcreate() public
create(Psr\Http\Message\ServerRequestInterface $request): Cake\Controller\Controller
Создаёт контроллер для данного запроса.
Параметры
-
Psr\Http\Message\ServerRequestInterface$request Запрос для создания контроллера.
Возвращает
Cake\Controller\ControllerИсключения
Cake\Http\Exception\MissingControllerExceptiongetActionArgs() protected
getActionArgs(Closure $action, array $passedParams): array
Получить аргументы для вызова действия контроллера.
Параметры
-
Closure$action Действие контроллера.
-
array$passedParams Параметры, переданные маршрутизатором.
Возвращает
arraygetControllerClass() public
getControllerClass(Cake\Http\ServerRequest $request): string|null
Определение имени класса контроллера на основе текущего запроса и параметра контроллера
Параметры
-
Cake\Http\ServerRequest$request Запрос для создания контроллера.
Возвращает
string|nullhandle() public
handle(ServerRequestInterface $request): Psr\Http\Message\ResponseInterface
Вызвать действие.
Может вызвать другой код для генерации ответа.
Параметры
-
ServerRequestInterface$request Экземпляр запроса.
Возвращает
Psr\Http\Message\ResponseInterfaceinvoke() public
invoke(mixed $controller): Psr\Http\Message\ResponseInterface
Вызов действия контроллера и методов обертки.
Параметры
-
mixed$controller Контроллер для вызова.
Возвращает
Psr\Http\Message\ResponseInterfaceИсключения
Cake\Controller\Exception\MissingActionExceptionЕсли действие контроллера не найдено.
UnexpectedValueExceptionЕсли возвращаемое значение метода действия не равно null или экземпляру ResponseInterface.
missingController() protected
missingController(Cake\Http\ServerRequest $request): Cake\Http\Exception\MissingControllerException
Выбрасывает исключение, когда контроллер отсутствует.
Параметры
-
Cake\Http\ServerRequest$request Запрос.
Возвращает
Cake\Http\Exception\MissingControllerExceptionПодробное описание свойств
$container protected
Тип
Cake\Core\ContainerInterface$controller protected
Тип
Cake\Controller\Controller
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.3/class-Cake.Controller.ControllerFactory.html