Spec-Zone.ru › CakePHP 3.1

Трейт StaticConfigTrait

Трейт, предоставляющий набор статических методов для управления конфигурацией для классов, предоставляющих фасад адаптера или нуждающихся в регистрации и манипулировании наборами данных конфигурации.

Реализующие объекты должны объявлять статическое свойство $_dsnClassMap.

Прямые известные пользователи

Cake\Cache\Cache, Cake\Datasource\ConnectionManager, Cake\Log\Log, Cake\Mailer\Email
Пространство имен: Cake\Core
Расположение Core/StaticConfigTrait.php

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

configsource public static

config( string|array $key , array $config null )

Этот метод можно использовать для определения адаптеров конфигурации для приложения или чтения существующей конфигурации.

Чтобы изменить конфигурацию адаптера во время выполнения, сначала удалите адаптер, а затем переконфигурируйте его.

Адаптеры не будут созданы до тех пор, пока не будет выполнено первое действие.

Использование

Предполагая, что имя класса Cache поддерживаются следующие сценарии:

Чтение данных конфигурации обратно:

Cache::config('default');

Настройка движка кеша:

Cache::config('default', $settings);

Ввод в адаптер, который уже был создан:

Cache::config('default', $instance);

Конфигурация нескольких адаптеров одновременно:

Cache::config($arrayOfConfig);

Параметры

string|array $key
Имя конфигурации или массив нескольких конфигураций.
array $config optional null
Массив данных конфигурации адаптера в формате имя => конфигурация.

Возвращает

array|null
Null при добавлении конфигурации или массив данных конфигурации при чтении.

Выбрасывает

BadMethodCallException
При попытке изменить существующую конфигурацию.

configuredsource public static

configured( )

Возвращает массив, содержащий указанные конфигурации.

Возвращает

array
Массив конфигураций.

dropsource public static

drop( string $config )

Удаляет созданный адаптер.

Если вы хотите изменить существующую конфигурацию, вы должны удалить её, изменить конфигурацию и затем повторно добавить её.

Если реализующие объекты поддерживают объект $_registry, указанная конфигурация также будет выгружена из реестра.

Параметры

string $config
Существующая конфигурация, которую вы хотите удалить.

Возвращает

boolean
Успешность удаления, возвращает false, если конфигурация не существует.

dsnClassMapsource public static

dsnClassMap( array $map null )

Возвращает или обновляет карту классов DSN для этого класса.

Параметры

array $map optional null
Добавления/изменения в карту классов для применения.

Возвращает

array
массив

parseDsnsource public static

parseDsn( string $dsn )

Парсит DSN в корректную конфигурацию соединения.

Этот метод позволяет установить DSN с форматированием, аналогичным используемому PEAR::DB. Пример его использования:

$dsn = 'mysql://user:pass@localhost/database?';
$config = ConnectionManager::parseDsn($dsn);

$dsn = 'Cake\Log\Engine\FileLog://?types=notice,info,debug&file=debug&path=LOGS';
$config = Log::parseDsn($dsn);

$dsn = 'smtp://user:secret@localhost:25?timeout=30&client=null&tls=null';
$config = Email::parseDsn($dsn);

$dsn = 'file:///?className=\My\Cache\Engine\FileEngine';
$config = Cache::parseDsn($dsn);

$dsn = 'File://?prefix=myapp_cake_core_&serialize=true&duration=+2 minutes&path=/tmp/persistent/';
$config = Cache::parseDsn($dsn);

Для всех классов значение scheme устанавливается как значение className, если не указано иное.

Обратите внимание, что аргументы строки запроса также анализируются и устанавливаются как значения в возвращаемой конфигурации.

Параметры

string $dsn
Строка DSN для преобразования в массив конфигурации.

Возвращает

array
Массив конфигурации для хранения после анализа DSN

Выбрасывает

InvalidArgumentException
Если не передана строка

Резюме свойств

$_configsource

protected static массив

Наборы конфигурации.

[]

© 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/3.1/class-Cake.Core.StaticConfigTrait.html

Spec-Zone.ru

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