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


<?php

# Установите debug в 0, если не хотите видетв информацию обработки на экране, 8 или в если хотите видеть информацию обработки на экране $debug = "1";

global Sdebug; ?>

Когда все заработает, и форматирование HTML будет удовлетворительным, можно отключить вывод информации обработки, установив для $ debug зна­чение 0:

<html>

<head>

<title>PRAX Demonstration</title>

</head> <body> <?php

print("<h1>Travel Packages</h1>\n"); Если путь к PRAX. php указан правильно, то должен работать следующий код:

U Включить библиотеку RAX

includeC'. /PRAX. php");

Создаем экземпляр объекта RAX:

в Создать новый объект RAX $rax =: new RAX();

Загружаем файл

# Открыть документ XML

$ rax->openfile("./t ravel.xml");

Определим тег, служащий разделителем строк. Значение этого разделителя будет таким же, как имя элемента второго уровня в документе XML. В дан­ном примере это Travelpackage:

I Выбрать разделитель записей, аналогичных строкам таблицы $raxi->record„delim = ; Travelpackage';

# Начать синтаксический анализ документа XML $rax->parse();

# Прочесть первую запись free = $rax->readRecord();

Теперь мы можем отобразить содержимое документа XML любым желае­мым образом. Всякому, кто занимался отображением запросов к базе дан­ных в HTML, это покажется знакомым. Вместо соединения с базой данных, выполнения запроса и получения его результатов PRAX выполняет функ­цию getRow(). Этот код циклически проходит документ XML с помощью whi­le ($гес), пока есть записи для отображения. Содержимое документа XML помещается в $ row в виде массива. Имена полей служат ключами, а по­ля представляются значениями в массиве. Код нашего примера выводит XML в виде таблицы с двумя колонками:

echo("<table cellpadding=\"0\" border=\"0\">\n");

while ( $rec ) {

$row = $rec->getRow(); $row = $rec->getRow(); echo("<trxtd>Country_name</tdxtd>" .

$row["Country_name"] . "</tdx/tr>\n"); echo("<tr><td>City</td><td>" . $row["City"] . "</tdx/tr>\n"); echo("<tr><td>Resort</tdxtd>" . $row["Resort"] . "</tdx/tr>\n"); echo("<trxtd>Resort_rating</tdxtd>" .

. "</tdX/tr>\n");

echo("<trXtd>Resort_typeofholiday</tdxtd>" .