{config_load}
используется для загрузки
конфигурационных переменных
(#variables#
) из
конфигурационных файлов в шаблон.
Имя атрибута | Тип | Обязателен | По умолчанию | Описание |
---|---|---|---|---|
file | string | Да | n/a | Имя config файла для загрузки |
section | string | Нет | n/a | Имя секции для загрузки |
scope | string | Нет | local | Способ обработки области видимости загруженных переменных. Должен быть одинм из local, parent или global. local означает, что переменные загружены в контекст локального шаблона. parent означает, что переменные загружены в контекст как локального, так и родительского шаблона. global означает, что переменные доступны из любого шаблона. |
global | boolean | Нет | No | Доступны ли переменные из родительского шаблона. Аналогичен scope=parent. ЗАМЕЧАНИЕ: Этот атрибут перекрывается атрибутом scope, но все еще поддерживается. Если scope указан, то это значение игнорируется. |
Пример 7.3. {config_load}
Файл example.conf
.
#это комментарий конфигурационного файла # глобальные переменные pageTitle = "Main Menu" bodyBgColor = #000000 tableBgColor = #000000 rowBgColor = #00ff00 #секция переменных customer [Customer] pageTitle = "Customer Info"
и шаблон
{config_load file="example.conf"} <html> <head> <title>{#pageTitle#|default:"No title"}</title> </head> <body bgcolor="{#bodyBgColor#}"> <table border="{#tableBorderSize#}" bgcolor="{#tableBgColor#}"> <tr bgcolor="{#rowBgColor#}"> <td>First</td> <td>Last</td> <td>Address</td> </tr> </table> </body> </html>
Конфигурационные файлы
могут также содержать секции. Вы можете загружать
переменные из определенной секции, указав атрибут
section
. Имейте в виду, что глобальные
конфигурационные переменные всегда загружаются вместе с секционными
переменными, которые могут переопределять их.
Замечание
Секции файлов конфигурации и встроенная
функция
{section}
не имеют ничего общего, кроме схожего названия.
Пример 7.4. функция {config_load} с секцией
{config_load file='example.conf' section='Customer'} <html> <head> <title>{#pageTitle#|default:"No title"}</title> </head> <body bgcolor="{#bodyBgColor#}"> <table border="{#tableBorderSize#}" bgcolor="{#tableBgColor#}"> <tr bgcolor="{#rowBgColor#}"> <td>First</td> <td>Last</td> <td>Address</td> </tr> </table> </body> </html>
См. $config_overwrite
для массивов конфигурационных переменных.
См. также Конфигурационные файлы,
Конфигурационные переменные,
$config_dir
,
get_config_vars()
и
config_load()
.