Spec-Zone.ru › CakePHP 4.3

Trait StaticConfigTrait

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

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

Пространство имён: Cake\Core

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

  • $_config protected static
    array<string, mixed>

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

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

  • configured() public static

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

  • drop() public static

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

  • getConfig() public static

    Читает существующую конфигурацию.

  • getConfigOrFail() public static

    Читает существующую конфигурацию для определённого ключа.

  • getDsnClassMap() public static

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

  • parseDsn() public static

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

  • setConfig() public static

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

  • setDsnClassMap() public static

    Обновляет карту классов DSN для данного класса.

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

configured() public static

configured(): array<string>

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

Возвращает

array<string>

drop() public static

drop(string $config): bool

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

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

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

Параметры

string $config

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

Возвращает

bool

getConfig() public static

getConfig(string $key): mixed|null

Читает существующую конфигурацию.

Параметры

string $key

Имя конфигурации.

Возвращает

mixed|null

getConfigOrFail() public static

getConfigOrFail(string $key): mixed

Читает существующую конфигурацию для определённого ключа.

Значение конфигурации для данного ключа должно существовать, оно никогда не может быть null.

Параметры

string $key

Имя конфигурации.

Возвращает

mixed

Исключения

InvalidArgumentException
Если значение не существует.

getDsnClassMap() public static

getDsnClassMap(): array<string, string>

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

Возвращает

array<string, string>

parseDsn() public static

parseDsn(string $dsn): array<string, mixed>

Парсит 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<string, mixed>

Исключения

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

setConfig() public static

setConfig(array<string, mixed>|string $key, object|array<string, mixed>|null $config = null): void

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

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

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

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

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

Настройка движка кэша.

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

Внедрение созданного адаптера:

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

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

Cache::setConfig($arrayOfConfig);

Параметры

array<string, mixed>|string $key

Имя конфигурации или массив нескольких конфигураций.

object|array<string, mixed>|null $config optional

Массив данных конфигурации адаптера с именем => значение.

Возвращает

void

Исключения

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

setDsnClassMap() public static

setDsnClassMap(array<string, string> $map): void

Обновляет карту классов DSN для данного класса.

Параметры

array<string, string> $map

Добавления/изменения в карте классов для применения.

Возвращает

void

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

$_config protected static

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

Тип

array<string, mixed>

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

Spec-Zone.ru

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