Класс BaseApplication
Базовый класс для полнофункциональных приложений
Этот класс служит базовым классом для приложений, использующих CakePHP как полнофункциональный фреймворк. Если вы используете только библиотеки Http или Console, вы должны реализовать соответствующие интерфейсы напрямую.
Класс приложения отвечает за загрузку приложения и обеспечение подключения middleware. Он также вызывается как последняя часть middleware и делегирует обработку запроса/ответа соответствующему контроллеру.
Краткое описание свойств
- $_eventClass protected
stringИмя по умолчанию класса для новых объектов событий.
- $_eventManager protected
Cake\Event\EventManagerInterface|nullЭкземпляр Cake\Event\EventManager, используемый этим объектом для отправки внутренних событий.
- $configDir protected
string - $container protected
Cake\Core\ContainerInterface|nullКонтейнер
- $controllerFactory protected
Cake\Http\ControllerFactoryInterface|nullФабрика контроллеров
- $plugins protected
Cake\Core\PluginCollectionКоллекция плагинов
Краткое описание методов
-
__construct() public
Конструктор
-
addOptionalPlugin() public
Добавить необязательный плагин
-
addPlugin() public
Добавить плагин в загруженный набор плагинов.
-
bootstrap() public
Загрузить всю конфигурацию приложения и логику загрузки.
-
buildContainer() protected
Сформировать контейнер сервисов
-
console() public
Определить консольные команды для приложения.
-
dispatchEvent() public
Обёртка для создания и отправки событий.
-
getContainer() public
Получить контейнер внедрения зависимостей для приложения.
-
getEventManager() public
Возвращает экземпляр менеджера Cake\Event\EventManager для данного объекта.
-
getPlugins() public
Получить используемую коллекцию плагинов.
-
handle() public
Вызвать приложение.
-
middleware() abstract public
Определить слои HTTP middleware для приложения.
-
pluginBootstrap() public
Запустить логику загрузки для загруженных плагинов.
-
pluginConsole() public
Запустить консольные хуки для плагинов
-
pluginMiddleware() public
Запустить хуки middleware для плагинов
-
pluginRoutes() public
Запустить хуки маршрутов для загруженных плагинов
-
routes() public
Определить маршруты для приложения.
-
services() public
Зарегистрировать сервисы контейнера приложения.
-
setEventManager() public
Возвращает экземпляр Cake\Event\EventManagerInterface для данного объекта.
Подробное описание методов
__construct() public
__construct(string $configDir, Cake\Event\EventManagerInterface $eventManager = null, Cake\Http\ControllerFactoryInterface $controllerFactory = null)
Конструктор
Параметры
-
string$configDir Директория, в которой хранится конфигурация загрузки.
-
Cake\Event\EventManagerInterface$eventManager необязательно Экземпляр менеджера событий приложения.
-
Cake\Http\ControllerFactoryInterface$controllerFactory необязательно Фабрика контроллеров.
addOptionalPlugin() public
addOptionalPlugin(stringCake\Core\PluginInterface $name, array $config = []): $this
Добавить необязательный плагин
Если плагин недоступен, пропустить его.
Параметры
-
stringCake\Core\PluginInterface$name Имя плагина или объект плагина.
-
array$config необязательно Данные конфигурации плагина, если $name является строкой
Возвращает
$thisaddPlugin() public
addPlugin(stringCake\Core\PluginInterface $name, array $config = []): $this
Добавить плагин в набор загруженных плагинов.
Если плагин с данным именем не существует или не определяет класс Plugin, будет использован экземпляр Cake\Core\BasePlugin. Этот сгенерированный класс будет иметь все плагин-хуки включёнными.
Параметры
-
stringCake\Core\PluginInterface$name -
array$config необязательно
Возвращает
$thisbootstrap() public
bootstrap(): void
Загрузить всю конфигурацию приложения и логику загрузки.
Переопределите этот метод, чтобы добавить дополнительную логику загрузки для вашего приложения.
Возвращает
voidbuildContainer() protected
buildContainer(): Cake\Core\ContainerInterface
Создать контейнер сервисов
Переопределите этот метод, если вам нужен пользовательский контейнер или вы хотите изменить способ создания контейнера.
Возвращает
Cake\Core\ContainerInterfaceconsole() public
console(Cake\Console\CommandCollection $commands): Cake\Console\CommandCollection
Определить консольные команды для приложения.
По умолчанию все команды в CakePHP, плагинах и приложении будут загружены с использованием стандартных имён.
Параметры
-
Cake\Console\CommandCollection$commands CommandCollection для добавления команд.
Возвращает
Cake\Console\CommandCollectiondispatchEvent() public
dispatchEvent(string $name, array|null $data = null, object|null $subject = null): Cake\Event\EventInterface
Обёртка для создания и отправки событий.
Возвращает обработанное событие.
Параметры
-
string$name Имя события.
-
array|null$data необязательно Любое значение, которое вы хотите передать с этим событием, чтобы его могли прочитать слушатели.
-
object|null$subject необязательно Объект, к которому относится это событие ($this по умолчанию).
Возвращает
Cake\Event\EventInterfacegetContainer() public
getContainer(): Cake\Core\ContainerInterface
Получить контейнер инъекции зависимостей для приложения.
В первый раз при получении контейнера он будет создан и сохранён для последующих вызовов.
Возвращает
Cake\Core\ContainerInterfacegetEventManager() public
getEventManager(): Cake\Event\EventManagerInterface
Возвращает экземпляр менеджера событий Cake\Event\EventManager для этого объекта.
Вы можете использовать этот экземпляр для регистрации новых слушателей или обратных вызовов к событиям объекта, или создавать свои собственные события и вызывать их по своему желанию.
Возвращает
Cake\Event\EventManagerInterfacegetPlugins() public
getPlugins(): Cake\Core\PluginCollection
Получить используемый набор плагинов.
Возвращает
Cake\Core\PluginCollectionhandle() public
handle(ServerRequestInterface $request): Psr\Http\Message\ResponseInterface
Вызвать приложение.
- Преобразовать PSR-ответ в эквиваленты CakePHP.
- Создать контроллер, который будет обрабатывать этот запрос.
- Вызвать контроллер.
Параметры
-
ServerRequestInterface$request Запрос
Возвращает
Psr\Http\Message\ResponseInterfacemiddleware() abstract public
middleware(Cake\Http\MiddlewareQueue $middlewareQueue): Cake\Http\MiddlewareQueue
Определить слои HTTP-средств обработки для приложения.
Параметры
-
Cake\Http\MiddlewareQueue$middlewareQueue Очередь средств обработки для установки в вашем классе App
Возвращает
Cake\Http\MiddlewareQueuepluginBootstrap() public
pluginBootstrap(): void
Выполнить логику загрузки для загруженных плагинов.
Возвращает
voidpluginConsole() public
pluginConsole(Cake\Console\CommandCollection $commands): Cake\Console\CommandCollection
Выполнить консольные хуки для плагинов
Параметры
-
Cake\Console\CommandCollection$commands
Возвращает
Cake\Console\CommandCollectionpluginMiddleware() public
pluginMiddleware(Cake\Http\MiddlewareQueue $middleware): Cake\Http\MiddlewareQueue
Выполнить хуки средств обработки для плагинов
Параметры
-
Cake\Http\MiddlewareQueue$middleware
Возвращает
Cake\Http\MiddlewareQueuepluginRoutes() public
pluginRoutes(Cake\Routing\RouteBuilder $routes): Cake\Routing\RouteBuilder
Выполнить хуки маршрутизации для загруженных плагинов
Параметры
-
Cake\Routing\RouteBuilder$routes
Возвращает
Cake\Routing\RouteBuilderroutes() public
routes(Cake\Routing\RouteBuilder $routes): void
Определить маршруты приложения.
По умолчанию загрузит config/routes.php для удобства использования и обратной совместимости.
Параметры
-
Cake\Routing\RouteBuilder$routes Строитель маршрутов для добавления маршрутов.
Возвращает
voidservices() public
services(Cake\Core\ContainerInterface $container): void
Зарегистрировать сервисы контейнера приложения.
Зарегистрированные сервисы могут быть получены из контейнера с помощью get(). Зависимости и параметры будут разрешены на основе определений сервисов.
Параметры
-
Cake\Core\ContainerInterface$container Контейнер для обновления.
Возвращает
voidsetEventManager() public
setEventManager(Cake\Event\EventManagerInterface $eventManager): $this
Возвращает экземпляр Cake\Event\EventManagerInterface для этого объекта.
Вы можете использовать этот экземпляр для регистрации новых слушателей или обратных вызовов к событиям объекта, или создавать свои собственные события и вызывать их по своему желанию.
Параметры
-
Cake\Event\EventManagerInterface$eventManager менеджер событий для установки
Возвращает
$thisПодробное описание свойства
$_eventClass protected
Имя по умолчанию для новых объектов события.
Тип
string$_eventManager protected
Экземпляр Cake\Event\EventManager, используемый этим объектом для отправки внутренних событий.
Тип
Cake\Event\EventManagerInterface|null$configDir protected
Тип
string$container protected
Контейнер
Тип
Cake\Core\ContainerInterface|null$controllerFactory protected
Фабрика контроллеров
Тип
Cake\Http\ControllerFactoryInterface|null$plugins protected
Коллекция плагинов
Тип
Cake\Core\PluginCollection
© 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.2/class-Cake.Http.BaseApplication.html