воскресенье, 25 декабря 2011 г.

Модуль настроек

Все настройки находятся в директории "protected/config"

[admin] — конфигурация административного модуля
[check] — настройки проверки форм (если загружен модуль)
[autoload.php] — здесь находятся директории, из которых будут автоматически загружатся классы
[config.php] — общие настройки (development/online, show errors)
[db.php] — Настройки базы данных (PDO)  (если загружен модуль)
[path.php] — нахождение важных системных папок
[regional.php] — региональные настройки
[routes.php] — связь маршрута URL и контроллеров (подробнее в комментариях файла) (используется в главном контроллере - front controller)
[tables.php] — псевдонимы таблиц (используется в классе db)

Функции модуля настроек


function load_config($module_path, $params = '')
 - Загрузить настройки из файла с параметрами
$module_path — путь к файлу настройки, например
$params - параметры (опционально)
(!) Элементы массива параметров (
$params) в файле настроек становятся переменными, при этом эти параметры используются во всех последующих загружаемых файлах настроек
(!) Если файл конфигурации не загружен, он инклудится средствами ПХП, иначе ничего не происходит (т.е. файл загружается 1 раз).
(!) Если например мы загрузили файл настроек test1 (load_config('test1')) - тогда массив test1 во всех последующих настроечных файлах превращается в переменную test1, содержимое которой равно содержимому массива test1 из файла test1.

Примеры:
load_config('x1') — загрузить массив конфигурации из файла config/x1.php
load_config('xxx/yyy') — загрузить массив конфигурации из файла config/xxx/yyy.php
load_config('regional', array('default_locale' => 'ru')) — загрузить файл конфигурации regional/config.php, значение переменной $default_locale в файле будет равна 'ru'

function get_config($config_path)

 - Вернуть массив конфигурации, либо любое значение его индекса неограниченной вложенности.
(!) Если файл конфигурации не загружен, он инклудится средствами ПХП, иначе возвращается уже загруженный модуль (т.е. файл загружается 1 раз).

(!) Если например мы загрузили файл настроек test1 (get_config('test1')) - тогда массив test1 во всех последующих настроечных файлах превращается в переменную test1, содержимое которой равно содержимому массива test1 из файла test1.

Примеры:
get_config('config') — вернуть массив конфигурации из файла config/config.php
get_config('xxx/yyy') — вернуть массив конфигурации из файла config/xxx/yyy.php
get_config('config.DEBUG_MODE') — вернуть значение ключа DEBUG_MODE из массива конфигурации из файла config/config.php

function delete_config($module)
- выгрузить заранее загруженный модуль конфигурации


Пример:


config/text1.php

<?php
$test1['hello'] = ' -=HELLO FROM TEST '.$number.'=- ';
?>



config/test2.php

<?php
$test2['xyz'] = array(
  'x' => 'test2: '.$test1['hello']
);
?>



//Somewher in code ...
load_config('test1', array('number' => '1'));
$x = get_config('test2.xyz.x');
echo $x;

Выведет:
test2: -=HELLO FROM TEST 111=-

Комментариев нет:

Отправить комментарий