Учебник по основам PHP. PHPBeginner



         

XML-интерпретация - часть 3


{ global Sdepth:

for ($1 = 0. $1 < $depth[$parser]; $i++) { print "". }

print "$name\n": $depth[$parser]++; }

function endElement($parscr. $name)

{ global $depth- $depth[$parser]--; }

$xml_parser = xml_parser_create().

xml__set_element_nandler

($xml_parser. "startElement", "endElement"):

if (!($fp = fopen($file. "r"») {

dieC'could not open XML input")

while «data = fread($fp. 4096)) {

ll(!xml_parse($xml_parser, $data. feof($fp)))

{ die(sprintf("XML error: Xs at line id".

xml_error_string(xml_get_error_code($xml_parser)),

xml_get_current_l ine__number($xml_parser)));

xml_parser_free($xml на-se"):

Преобразование тегов XML в HTML

$file = "data xml '. $jndp_array = arrayt

"BOLD" > "B". "EMPHASIS" => "I".

"LITERAL" => "TT' );

function startElement($parset . $пате. Sattrs)

{ global $map_array; if (ShtTiltag =

$map_array[$namej)

{ print "<$htmltag>'. function endElanenttSparser. $namp)

{ global $mao_array. if (Shtmltag - $map_array[$name]) (

print "</$htmltag>"; } } function characterData(Sparser. $data) {

print Sdata: } $xml_parser = xml_parser_create();

// отключить чувствительность к регистру

xml_parser_set_option

($xml_parser. XML_OPTION_CASE_FOLDING. TRUE):

xml_set_element_handler

($xml_parser. "startElement". "endElement");

xml_set_character_data_handler

($xml_parser. "characterData");

if (!($fp = fopen($file. "r")))

{ dieC'could not open XML input"); } while (Sdata =

fread(Sfp. 4096)) {

if (!xml_parse($xml_parser. Sdata. feof($fp)))

{ die(spnntf("XML error: ?s at line %u".

xml_error_string(xml_get_error_code

(Sxml_parser)). xml_get_current_line_number($xml_parser))): }

} xml_parser_free($xml_parser).

Обработка специальных конструкций XML

Пример демонстрирует обработку подключенных внешних файлов и инструкций обработки. Использует при выводе разметку HTML.




Содержание  Назад  Вперед