С помощью конфигурационных файлов дизайнеру удобно управлять глобальными переменными из одного файла. Например, цветами в шаблонах. Обычно, если вы хотите сменить цветувую схему, то необходимо просмотреть каждый шаблон и в каждом изменить цвета. С помощью файла конфигурации все цвета могут быть вынесены в отдельный файл и только один файл надо будет исправлять.
Example 9.1. Пример файла конфигурации
# глобальные переменные pageTitle = "Main Menu" bodyBgColor = #000000 tableBgColor = #000000 rowBgColor = #00ff00 [Customer] pageTitle = "Customer Info" [Login] pageTitle = "Login" focus = "username" Intro = """Значение, которое занимает больше чем одну строку должно быть заключено в тройные кавычки.""" # спрятанная секция [.Database] host=my.example.com db=ADDRESSBOOK user=php-user pass=foobar
Значения переменных в
конфигурационных файлах могут заключаться в кавычки, но это не
обязательно. Можно использовать как двойные, так и одинарные кавычки.
Если у вас есть значение, которое занимает больше, чем одну строку,
необходимо заключить его в тройные кавычки (""").
Можно включать комментарии в файл конфигурации используя любой синтакис,
который не является допустимым синтаксисом файлов конфигурации.
Для этих целей рекомендуется использовать символ #
(hash) в начале строки.
Конфигурационный файл в примере имеет две секции. Названия секций заключены в
квадратные скобки []. Названия секций могут быть произвольными строками,
не содержащими символов [
или ]
. Четыре
переменные вначале - глобальные переменные или переменные вне секций.
Эти переменные всегда загружаются из файла конфигурации. Если загружается
определенная секция, то глобальные переменные и переменные из этой секции
становятся доступными. Если переменная существует как глобальная, так и
внутри секции, то используется версия из секции. Если есть две одинаковые
переменные в пределах одной секции, то используеться последний встретившийся
вариант, если только параметр
$config_overwrite
не был предварительно отключен.
Файлы конфигурации загружаются в шаблон при помощи
встроенной шаблонной функции
{config_load}
или API-функции config_load()
.
Можно спрятать отдельные переменные или целые секции, добавив к названию
точку в начале, например [.hidden]
.
Это полезно, когда ваше приложение берет некоторые
переменные, ненужные в шаблоне, из файла конфигурации. Если шаблоны могут
редактировать третьи лица, то вы можете быть спокойны за ценную информацию
из файлов конфигураций: они не смогут ее загрузить в шаблон.
См. также
{config_load}
,
$config_overwrite
,
get_config_vars()
,
clear_config()
и
config_load()