Самоучитель по SQL-сервер в Linux



Включение данных

В системе управления включением данных LXP центральное место занимает тег <include>. Он работает в разных режимах в зависимости от переданного атрибута method или контекста, определяемого значениями атрибутов.

В простейшем виде тег <i ncl ude> используется для простого включения файлов HTML— стандартных заголовков, панелей ссылок и нижних колонтитулов. Существуют и другие, не столь тривиальные применения — тег <include> может использоваться для разбора файлов, разделенных произвольными лексемами, и базовых документов XML, внедрения выходных данных РНР в документы LXP, непосредственной обработки запросов SQL и, конечно, включения других документов LXP.

В табл. 13.1 перечислены методы включения, поддерживаемые тегом <incl ude>. В первом столбце указаны значения атрибута method тега <i ncl ude>. Во втором столбце приведены псевдонимы — альтернативные имена для вызова метода. В столбце «По умолчанию» указаны значения атрибутов, при которых этот метод используется по умолчанию (при этом необходимость в явном указании атрибута method отпадает). В столбце «Описание» приводится краткое описание самого метода.

Таблица 13.1. Методы включения в LXP

Метод

Псевдонимы

По умолчанию

Описание

LXP

 

Атрибут src завершается расширением .1хр

Файл обрабатывается средствами modjxp

flat

 

Неопознанное расширение в атрибуте src при отсутствии атрибутов sql и query

Простой вывод содержимого файла

parsed

   

Лексический разбор файла с разбиением на значения <field>

XML

RSS, RDF

Атрибут src завершается расширением .xml, .rdf или .rss

Лексический разбор нормально сформированного файла XML с разбиением на значения <field>

local

Apache

Атрибут src завершается расширением .php, .рпрЗ или .phtml

Воспроизведение выходных данных подзапроса Apache, атрибут src содержит имя файла

URI

   

Воспроизведение выходных данных подзапроса Apache, атрибут src содержит HTTP URI

SQL

 

Наличие атрибута sql или query

Выполнение команды SQL. Доступ к результатам запроса осуществляется при помощи переменных и тегов <field>

Источник включаемых данных всегда задается атрибутом src тега <include>. В большинстве случаев это имя файла, хотя в зависимости от выбранного метода источником также может быть подключение к базе данных или URI. При включении файла с относительным путем (то есть не прослеживаемым к основанию файловой системы), LXP выбирает в качестве основания рабочий каталог документа LXP, в котором производится включение.

ПРИМЕЧАНИЕ

Для предотвращения непреднамеренной бесконечной рекурсии (например, из-за включения файла, включающего самого себя) в документах LXP включение может производиться только до глубины, заданной директивой MaxIncludeDepth в файле Ixp.conf (см. подраздел «Настройка файла Ixp.conf» в разделе «Установка и настройка LXP»). По умолчанию максимальная глубина включения равна 15.