CConfiguration
| Пакет | system.collections |
|---|---|
| Наследование | class CConfiguration » CMap » CComponent |
| Реализует | Countable, ArrayAccess, Traversable, IteratorAggregate |
| С момента | 1.0 |
| Исходный код | framework/collections/CConfiguration.php |
CConfiguration представляет конфигурацию на основе массива.
Она может использоваться для инициализации свойств объекта.
Данные конфигурации могут быть получены из PHP скрипта. Например,
Для применения конфигурации к объекту, вызовите applyTo(). Каждая пара (ключ, значение) в данных конфигурации применяется к объекту как: $object->$key=$value.
Так как CConfiguration наследуется от CMap, она может использоваться как ассоциативный массив. Смотрите CMap для более подробной информации.
Она может использоваться для инициализации свойств объекта.
Данные конфигурации могут быть получены из PHP скрипта. Например,
return array(
'name'=>'My Application',
'defaultController'=>'index',
);
Используйте следующий код для загрузки указанных выше данных конфигурации:
$config=new CConfiguration('path/to/config.php');
Для применения конфигурации к объекту, вызовите applyTo(). Каждая пара (ключ, значение) в данных конфигурации применяется к объекту как: $object->$key=$value.
Так как CConfiguration наследуется от CMap, она может использоваться как ассоциативный массив. Смотрите CMap для более подробной информации.
Общедоступные свойства
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| count | integer | Возвращает количество элементов в массиве. | CMap |
| iterator | CMapIterator | Возвращает итератор для обхода элементов в списке. | CMap |
| keys | array | список ключей | CMap |
| readOnly | boolean | указывает, является ли этот массив только для чтения. | CMap |
Общедоступные методы
| Метод | Описание | Определено в |
|---|---|---|
| __call() | Вызывает метод, который не является методом класса. | CComponent |
| __construct() | Конструктор. | CConfiguration |
| __get() | Возвращает значение свойства, список обработчиков событий или поведение на основе его имени. | CComponent |
| __isset() | Проверяет, является ли значение свойства null. | CComponent |
| __set() | Устанавливает значение свойства компонента. | CComponent |
| __unset() | Устанавливает свойство компонента в null. | CComponent |
| add() | Добавляет элемент в массив. | CMap |
| applyTo() | Применяет конфигурацию к объекту. | CConfiguration |
| asa() | Возвращает объект поведения с указанным именем. | CComponent |
| attachBehavior() | Присоединяет поведение к компоненту. | CComponent |
| attachBehaviors() | Присоединяет список поведений к компоненту. | CComponent |
| attachEventHandler() | Присоединяет обработчик событий к событию. | CComponent |
| canGetProperty() | Определяет, можно ли считать свойство. | CComponent |
| canSetProperty() | Определяет, можно ли установить свойство. | CComponent |
| clear() | Удаляет все элементы из массива. | CMap |
| contains() | CMap | |
| copyFrom() | Копирует данные итерируемого объекта в массив. | CMap |
| count() | Возвращает количество элементов в массиве. | CMap |
| detachBehavior() | Отсоединяет поведение от компонента. | CComponent |
| detachBehaviors() | Отсоединяет все поведения от компонента. | CComponent |
| detachEventHandler() | Отсоединяет существующий обработчик событий. | CComponent |
| disableBehavior() | Отключает присоединенное поведение. | CComponent |
| disableBehaviors() | Отключает все присоединенные поведения компонента. | CComponent |
| enableBehavior() | Включает присоединенное поведение. | CComponent |
| enableBehaviors() | Включает все присоединенные поведения компонента. | CComponent |
| evaluateExpression() | Вычисляет PHP выражение или обратный вызов в контексте этого компонента. | CComponent |
| getCount() | Возвращает количество элементов в массиве. | CMap |
| getEventHandlers() | Возвращает список присоединенных обработчиков событий для события. | CComponent |
| getIterator() | Возвращает итератор для обхода элементов в списке. | CMap |
| getKeys() | Возвращает список ключей | CMap |
| getReadOnly() | Возвращает, является ли данный массив только для чтения. По умолчанию false. | CMap |
| hasEvent() | Определяет, определено ли событие. | CComponent |
| hasEventHandler() | Проверяет, есть ли у указанного события присоединенные обработчики. | CComponent |
| hasProperty() | Определяет, определено ли свойство. | CComponent |
| itemAt() | Возвращает элемент с указанным ключом. | CMap |
| loadFromFile() | Загружает данные конфигурации из файла и объединяет их с существующей конфигурацией. | CConfiguration |
| mergeArray() | Рекурсивно объединяет два или более массивов в один. | CMap |
| mergeWith() | Объединяет данные итерируемого объекта в массив. | CMap |
| offsetExists() | Возвращает, существует ли элемент по указанному смещению. | CMap |
| offsetGet() | Возвращает элемент по указанному смещению. | CMap |
| offsetSet() | Устанавливает элемент по указанному смещению. | CMap |
| offsetUnset() | Удаляет элемент по указанному смещению. | CMap |
| raiseEvent() | Возбуждает событие. | CComponent |
| remove() | Удаляет элемент из массива по его ключу. | CMap |
| saveAsString() | Сохраняет конфигурацию в строку. | CConfiguration |
| toArray() | CMap |
Защищенные методы
| Метод | Описание | Определено в |
|---|---|---|
| setReadOnly() | Устанавливает, является ли этот список только для чтения | CMap |
Подробное описание методов
__construct() метод
public void __construct(mixed $data=NULL) | ||
| $data | mixed | если строка, представляет конфигурационный файл (PHP скрипт, возвращающий конфигурацию как массив); если массив, это данные конфигурации. |
Исходный код: framework/collections/CConfiguration.php#47 (показать)
public function __construct($data=null)
{
if(is_string($data))
parent::__construct(require($data));
else
parent::__construct($data);
}
Конструктор.
applyTo() метод
public void applyTo(object $object) | ||
| $object | object | объект, к которому будет применена эта конфигурация |
Исходный код: framework/collections/CConfiguration.php#95 (показать)
public function applyTo($object)
{
foreach($this->toArray() as $key=>$value)
$object->$key=$value;
}
Применяет конфигурацию к объекту. Каждая пара (ключ, значение) в данных конфигурации применяется к объекту, например: $object->$key=$value.
loadFromFile() метод
public void loadFromFile(string $configFile) | ||
| $configFile | string | путь к конфигурационному файлу (если используется относительный путь, учтите текущий путь) |
Исходный код: framework/collections/CConfiguration.php#70 (показать)
public function loadFromFile($configFile)
{
$data=require($configFile);
if($this->getCount()>0)
$this->mergeWith($data);
else
$this->copyFrom($data);
}
Загружает данные конфигурации из файла и объединяет их с существующей конфигурацией.
Конфигурационный файл должен быть PHP-скриптом, возвращающим массив конфигурации (например, следующий)
return array
(
'name'=>'My Application',
'defaultController'=>'index',
);
См. также
saveAsString() метод
public string saveAsString() | ||
| {return} | string | строковое представление конфигурации |
Исходный код: framework/collections/CConfiguration.php#84 (показать)
public function saveAsString()
{
return str_replace("\r",'',var_export($this->toArray(),true));
}
Сохраняет конфигурацию в строку. Строка является допустимым PHP выражением, представляющим данные конфигурации в виде массива.
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc/api/1.1/CConfiguration