Класс Плагин
Плагин используется для загрузки и поиска плагинов.
Он также может извлекать пути к плагинам и загружать их файлы bootstrap и маршрутизации.
Ссылка: http://book.cakephp.org/3.0/ru/plugins.html
Расположение: Core/Plugin.php
Краткое описание свойств
- Экземпляр загрузчика классов
- Содержит список всех загруженных плагинов и их конфигурации
array
Краткое описание методов
- Включение файла, игнорируя ошибку включения, если файл отсутствует
- Загрузка файла конфигурации пути к плагину.
- Загрузка файлов инициализации плагина или вызов настройки инициализации в конфигурации
- Возвращает путь к файловой системе для папки плагина, содержащей папки с классами.
- Возвращает путь к файловой системе для папки плагина, содержащей файлы конфигурации.
-
Загрузка плагина и, по желанию, загрузка файлов инициализации, маршрутизации или выполнение функции инициализации.
- Загрузка всех плагинов, расположенных в папке плагинов по умолчанию.
-
Возвращает true, если плагин $plugin уже загружен. Если плагин равен null, возвращает список всех загруженных плагинов.
- Возвращает путь к файловой системе для плагина
- Загрузка файла маршрутов для плагина или всех плагинов, настроенных для загрузки своих файлов маршрутов
- Удаляет загруженный плагин или все плагины, если первый параметр равен null
Подробное описание методов
_includeFile()source protected static
_includeFile( string $file , boolean $ignoreMissing false )
Включение файла, игнорируя ошибку включения, если файл отсутствует
Параметры
- строка
$file - Файл для включения
- логическое значение
$ignoreMissingнеобязательно false - Игнорировать ошибку включения для отсутствующих файлов
Возвращаемое значение
mixedbootstrap()source public static
bootstrap( string $plugin )
Загрузка файлов инициализации плагина или вызов настройки инициализации в конфигурации
Параметры
- строка
$plugin - Имя плагина
Возвращаемое значение
mixedСм. также
\Cake\Core\Plugin::load() для примеров конфигурации bootstrapclassPath()source public static
classPath( string $plugin )
Возвращает путь к файловой системе для папки плагина, содержащей папки с классами.
Параметры
- строка
$plugin - Имя плагина в формате CamelCase.
Возвращаемое значение
строкаПуть к папке плагина, содержащей папки с классами.
Исключения
Cake\Core\Exception\MissingPluginExceptionЕсли плагин не загружен.
configPath()source public static
configPath( string $plugin )
Возвращает путь к файловой системе для папки плагина, содержащей файлы конфигурации.
Параметры
- строка
$plugin - Имя плагина в формате CamelCase.
Возвращаемое значение
строкаПуть к папке плагина, содержащей файлы конфигурации.
Исключения
Cake\Core\Exception\MissingPluginExceptionЕсли плагин не загружен.
load()source public static
load( string|array $plugin , array $config [] )
Загрузка плагина и, по желанию, загрузка файлов инициализации, маршрутизации или выполнение функции инициализации.
Плагины нужно загружать только если вы хотите, чтобы файлы инициализации/маршрутизации/команды CLI были доступны. Если ваш плагин не предоставляет ни одну из этих функций, загружать его не нужно.
Этот метод не настраивает автозагрузчики. Это нужно делать отдельно, либо через Composer, либо в вашем коде во время config/bootstrap.php.
Примеры:
Plugin::load('DebugKit')
Загрузит плагин DebugKit и не загрузит файлы инициализации и маршрутизации. Однако плагин будет частью стандартных маршрутов фреймворка, и его инструменты CLI (если есть) будут доступны.
Plugin::load('DebugKit', ['bootstrap' => true, 'routes' => true])
Загрузит файлы bootstrap.php и routes.php.
Plugin::load('DebugKit', ['bootstrap' => false, 'routes' => true])
Загрузит только файл routes.php, но не bootstrap.php
Plugin::load('FOC/Authenticate')
Загрузит плагин из plugins/FOC/Authenticate.
Также можно загрузить несколько плагинов одновременно. Примеры:
Plugin::load(['DebugKit', 'ApiGenerator'])
Загрузит плагины DebugKit и ApiGenerator.
Plugin::load(['DebugKit', 'ApiGenerator'], ['bootstrap' => true])
Загрузит файл bootstrap для обоих плагинов
Plugin::load([
'DebugKit' => ['routes' => true],
'ApiGenerator'
],
['bootstrap' => true]) Загрузит только bootstrap для ApiGenerator и только маршруты для DebugKit
Параметры конфигурации
-
bootstrap- массив - Загружать ли файл $plugin/config/bootstrap.php. -
routes- булево значение - Загружать ли файл $plugin/config/routes.php. -
ignoreMissing- булево значение - Игнорировать отсутствующие файлы bootstrap/routes. -
path- строка - Путь к плагину. Если пусто, используется стандартный путь к плагинам (App.pluginPaths). -
classBase- Путь относительноpath, содержащий папки с файлами классов. По умолчанию "src". -
autoload- булево значение - Регистрировать автозагрузчик. По умолчанию false. Фреймворк предполагает, что автозагрузчики настроены через Composer. Однако, если ваша структура приложения состоит из плагинов, это может быть полезным вариантом.
Параметры
- строка|массив
$plugin - Имя загружаемого плагина в формате CamelCase или массив плагинов
- массив
$configнеобязательно [] - Параметры конфигурации плагина
Исключения
Cake\Core\Exception\MissingPluginExceptionЕсли папка плагина не найдена
loadAll()source public static
loadAll( array $options [] )
Загрузка всех плагинов, расположенных в папке плагинов по умолчанию.
Если передан массив параметров, он будет использоваться в качестве общих параметров для всех загружаемых плагинов. Возможна установка специфичных параметров для каждого плагина в массиве параметров. Примеры:
Plugin::loadAll([
['bootstrap' => true],
'DebugKit' => ['routes' => true],
]); В приведённом примере файл bootstrap будет загружен для всех плагинов, но для DebugKit будет загружен только файл маршрутов и не будет поиска файла bootstrap.
Если плагин уже загружен, loadAll() его не перезагрузит.
Параметры
- массив
$optionsнеобязательно [] - Параметры.
loaded()source public static
loaded( string|null $plugin null )
Возвращает true, если плагин $plugin уже загружен. Если плагин равен null, возвращает список всех загруженных плагинов.
Параметры
- строка|null
$pluginнеобязательно null - Имя плагина.
Возвращаемое значение
boolean|массивБулево значение true, если $plugin уже загружен. Если $plugin равен null, возвращается список загруженных плагинов.
path()source public static
path( string $plugin )
Возвращает путь к файловой системе для плагина
Параметры
- строка
$plugin - имя плагина в формате CamelCase
Возвращает
строкапуть к папке плагина
Исключения
Cake\Core\Exception\MissingPluginExceptionесли папка для плагина не найдена или плагин не загружен
routes()source public static
routes( string|null $plugin null )
Загружает файл маршрутов для плагина или всех плагинов, настроенных на загрузку их собственных файлов маршрутов
Параметры
- строка|null
$pluginнеобязательно null имя плагина, если null, будет работать со всеми плагинами, включившими загрузку файлов маршрутов
Возвращает
booleanunload()source public static
unload( string|null $plugin null )
Удаляет загруженный плагин или все из них, если первый параметр равен null
Параметры
- строка|null
$pluginнеобязательно null - имя плагина для удаления
Подробное описание свойств
$_pluginssource
protected static массив
Содержит список всех загруженных плагинов и их конфигурацию
[]
© 2005–2017 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/3.3/class-Cake.Core.Plugin.html