Подключите модуль «xml.lib.php» и вызывайте функцию ReadXML ( $MarkUp ), которая строит массив, соответственно иерархии элементов XML-текста. Диагностика правильности документа не производится.
Вставьте в php-сценарий следующие строки:
<?php include_once ( "xml.lib.inc" ); $XML = ReadXML ( "<doc>Test document <ul><li>1 st</li><li>2 nd</li></ul></doc>" ); // Обратное отладочное преобразование в XML-текст PrintXML ( $XML[0], 0 ); // Отладочный вывод массива var_export ( $XML, true ); ?>
В результате работы сценарий выдаст следующее:
<doc> . . Test document . . <ul> . . . . <li> . . . . . . 1 st . . . . </li> . . . . <li> . . . . . . 2 nd . . . . </li> . . </ul> </doc> array ( 0 => array ( 'ELEM' => 'TAG', 'NAME' => 'doc', 'BODY' => array ( 0 => array ( 'ELEM' => 'TEXT', 'BODY' => 'Test document ', ), 1 => array ( 'ELEM' => 'TAG', 'NAME' => 'ul', 'BODY' => array ( 0 => array ( 'ELEM' => 'TAG', 'NAME' => 'li', 'BODY' => array ( 0 => array ( 'ELEM' => 'TEXT', 'BODY' => '1 st', ), ), ), 1 => array ( 'ELEM' => 'TAG', 'NAME' => 'li', 'BODY' => array ( 0 => array ( 'ELEM' => 'TEXT', 'BODY' => '2 nd', ), ), ), ), ), ), ), )