Аргерих Л. О языке РНР. Часть 5. Страница 31



rpm -i sablotron-0.6x-x.i386.rpm или

rpm -i sablotron-devel-O. 6x-x. i386. rpm

После установки Sablotron можно перекомпилировать PHP с расширением XSLT, добавить строку - with-sablot в строку конфигурации, перекомпили­ровать и установить РНР. При возникновении проблем обратитесь к анноти­рованному руководству на сайте PHP.net: http://www.php.net/manual/en/"> http://www.php.net/manual/en/ ref.xslt.php.

Установка под Windows

При загрузке РНР 4.0.6 должны быть получены все динамические библиоте­ки *.dll, необходимые для установки Sablotron. Они находятся в каталоге PHP\dlls\ дистрибутива.

Для того чтобы установить Sablotron с РНР и Apache:

• Остановите если он работает.

• Установите следующие *.dll в каталоге: \Windows\System\ при работе под Windows98 или в каталог C:\WINNT\System32\ при работе под WindowsNT/ 2000:

• expat.dll

• sablot.dll

• xmlparser.dll

• xmltok.dll

• Откройте файл php.ini и раскомментируйте строку ;extension=php_sab- lot. dll.CoxpaHm^amiphp .ini

• Перезапустите Apache

•Запустите код

Инсталлятор Windows для IIS автоматически помещает эти файлы в нужное место.

Пример кода XSL

Для этого примера в один и тот же каталог надо поместить три файла:

• travel, xml

• travel.xsl

• xslt_travel.php

Документ XML travel xml - это тот же самый файл, с которым мы работали на протяжении данной главы. Файл t ravel xsl содержащит таблицу стилей XSL, a travel, php - файл, содержащий код РНР, который загружает файлы XML и XSL, вызывает процессор и возвращает результат в виде HTML в броузер.

В предшествующих примерах кода основная часть работы по представлению XML в виде таблицы HTML осуществлялась с помощью РНР. В данном при­мере основную часть работы обеспечивает XSL. В результате файл XSL ока­зывается самым большим из трех файлов, фигурирующих в примере.

Файл travel. xsl приводится ниже. В этом файле два основных раздела - за­головочный (или верхнего уровня) и тело документа. В заголовочной части определены версия и пространство имен файла.

Тело документа начинается со строки <xsl: output>. Структура тела этого XSL образована инструкциями для поиска частей документа XML и описаниями форматирования для найденных соответствий. Сначала находим /Recordset. Поскольку Recordset является корневым элементом, с его помощью можно задать начало файла XML. Мы хотим, чтобы содержимое файла XML отобра­жалось в виде таблицы HTML, и поэтому используем элемент Recordset в ка­честве идентификатора начала файла. И поэтому же поместим в данном раз­деле начальные теги HTML, такие как <title>, <head> и <body>: