Spec-Zone.ru › CakePHP 2.8

Класс CakePlugin

CakePlugin отвечает за загрузку и выгрузку плагинов. Он также может получать пути к плагинам и загружать файлы их загрузки и маршрутизации.

Пакет: Cake\Core
Ссылка: http://book.cakephp.org/2.0/ru/plugins.html
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: Лицензия MIT
Расположение: Cake/Core/CakePlugin.php

Краткое описание свойств

  • $_plugins protected static
    array
    Содержит список всех загруженных плагинов и их конфигураций

Краткое описание методов

  • _includeFile() protected static
    Включает файл, игнорируя ошибку включения, если файл отсутствует
  • bootstrap() public static
    Загружает файлы загрузки плагина или выполняет настройку инициализации из конфигурации
  • load() public static
    Загружает плагин и, по желанию, загружает файлы загрузки, маршрутизации или выполняет функцию инициализации
  • loadAll() public static

    Загружает все плагины, расположенные в папках плагинов, указанных в конфигурации. Если передать массив options, он будет использован в качестве общего значения по умолчанию для всех загружаемых плагинов. Возможна установка определенных значений по умолчанию для каждого плагина в массиве options. Примеры:

  • loaded() public static

    Возвращает true, если плагин $plugin уже загружен. Если плагин равен null, возвращается список всех загруженных плагинов.

  • path() public static
    Возвращает файловый путь к плагину
  • routes() public static
    Загружает файл маршрутов для плагина или всех плагинов, настроенных на загрузку своих файлов маршрутов
  • unload() public static
    Удаляет загруженный плагин или все плагины, если первый параметр равен null

Подробное описание методов

_includeFile()source protected static

_includeFile( string $file , boolean $ignoreMissing false )

Включает файл, игнорируя ошибку включения, если файл отсутствует

Параметры

строка $file
Файл для включения
логическое значение $ignoreMissing необязательно false
Игнорировать ошибку включения при отсутствии файла

Возвращает

смешанный тип

bootstrap()source public static

bootstrap( string $plugin )

Загружает файлы загрузки плагина или выполняет настройку инициализации из конфигурации

Параметры

строка $plugin
имя плагина

Возвращает

смешанный тип

См. также

CakePlugin::load() для примеров конфигурации загрузки
END_OF_DOCUMENT_MARKER

load()source public static

load( string|array $plugin , array $config array() )

Загружает плагин и необязательно загружает файлы инициализации, маршрутизации или выполняет функцию инициализации.

Примеры:

CakePlugin::load('DebugKit')

Загрузит плагин DebugKit и не загрузит файлы инициализации и маршрутизации.

CakePlugin::load('DebugKit', array('bootstrap' => true, 'routes' => true))

загрузит файлы bootstrap.php и routes.php.

CakePlugin::load('DebugKit', array('bootstrap' => false, 'routes' => true))

загрузит файл routes.php, но не bootstrap.php.

CakePlugin::load('DebugKit', array('bootstrap' => array('config1', 'config2')))

загрузит файлы config1.php и config2.php.

CakePlugin::load('DebugKit', array('bootstrap' => 'aCallableMethod'))

выполнит функцию aCallableMethod для его инициализации.

Функции инициализации для загрузки bootstrap могут быть выражены как обратный вызов на PHP, включая замыкания. Обратные вызовы получат два параметра (имя плагина, конфигурация плагина).

Также возможно загрузить сразу несколько плагинов. Примеры:

CakePlugin::load(array('DebugKit', 'ApiGenerator'))

загрузит плагины DebugKit и ApiGenerator.

CakePlugin::load(array('DebugKit', 'ApiGenerator'), array('bootstrap' => true))

загрузит файл инициализации для обоих плагинов.

CakePlugin::load(array(
        'DebugKit' => array('routes' => true),
        'ApiGenerator'
        ), array('bootstrap' => true))

Будет загружен только bootstrap для ApiGenerator и только маршрутизация для DebugKit. Используя опцию path, вы можете указать абсолютный путь к плагину. Убедитесь, что путь заканчивается слешем, иначе ваш плагин не будет найден корректно.

Параметры

string|array $plugin
имя плагина для загрузки в формате CamelCase или массив плагинов для загрузки
array $config optional array()
опции конфигурации для плагина

Исключения

MissingPluginException
если папка для загрузки плагина не найдена

loadAll()source public static

loadAll( array $options array() )

Загрузит все плагины, расположенные в папках плагинов, сконфигурированных в настройках. Если передан массив options, он будет использоваться как общий параметр по умолчанию для всех загружаемых плагинов. Возможна установка определенных параметров по умолчанию для каждого плагина в массиве options. Примеры:

CakePlugin::loadAll(array(
        array('bootstrap' => true),
        'DebugKit' => array('routes' => true, 'bootstrap' => false),
    ))

В приведенном выше примере будет загружен файл инициализации для всех плагинов, но для плагина DebugKit будет загружен только файл маршрутизации, и скрипт инициализации не будет искаться. Если вы загружаете много плагинов, которые несовместимо поддерживают файлы маршрутизации/инициализации, вместо того, чтобы детально описывать каждый плагин, вы можете использовать опцию ignoreMissing:

CakePlugin::loadAll(array(
  'ignoreMissing' => true,
  'bootstrap' => true,
  'routes' => true,
));

Опция ignoreMissing выполнит дополнительные вызовы file_exists(), но её проще использовать.

Параметры

array $options optional array()
Список параметров. См. CakePlugin::load() для допустимых параметров.

loaded()source public static

loaded( string $plugin null )

Возвращает true, если плагин $plugin уже загружен. Если plugin равен null, вернёт список всех загруженных плагинов.

Параметры

string $plugin optional null
Имя плагина для проверки.

Возвращаемое значение

mixed

boolean true, если $plugin уже загружен. Если $plugin равен null, возвращает список загруженных плагинов.


path()source public static

path( string $plugin )

Возвращает путь к файловой системе для плагина.

Параметры

string $plugin
имя плагина в формате CamelCase

Возвращаемое значение

string
путь к папке плагина

Исключения

MissingPluginException
если папка для плагина не найдена или плагин не загружен

routes()source public static

routes( string $plugin null )

Загружает файл маршрутизации для плагина или всех плагинов, настроенных на загрузку своих файлов маршрутизации.

Параметры

string $plugin optional null

имя плагина, если null, выполняет операции со всеми плагинами, у которых включена загрузка файлов маршрутизации

Возвращаемое значение

boolean

unload()source public static

unload( string $plugin null )

Забывает загруженный плагин или все, если первый параметр равен null

Параметры

строка $plugin необязательно null
имя плагина, который нужно забыть

Подробное описание свойств

$_pluginssource

protected static массив

Содержит список всех загруженных плагинов и их конфигурацию

array()

© 2005–2016 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.
http://api.cakephp.org/2.8/class-CakePlugin.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API