Преобразуйте правильно сформированную строку XML в объект SimpleXMLElement и выведите ключи и элементы объекта:
<?php$note=<<<XML<note><to>Тове</to><from>Яни</from><heading>Напоминание</heading><body>Не забудь меня в эти выходные!</ body></note>XML;$xml=simplexml_load_string($note);print_r($xml);?>Функция simplexml_load_string() преобразует правильно сформированную строку XML в объект SimpleXMLElement.
simplexml_load_string ( данные, имя класса, параметры, ns, is_prefix );
параметр | описывать |
---|---|
данные | Необходимый. Указывает правильно сформированную строку XML. |
имя класса | Необязательный. Указывает класс нового объекта. |
параметры | Необязательный. Указывает дополнительные параметры Libxml. Установите, указав для параметра значение 1 или 0 (ИСТИНА или ЛОЖЬ, например LIBXML_NOBLANKS(1)). Возможные значения: LIBXML_COMPACT — активирует оптимизированную конфигурацию узлов (может ускорить работу приложений) LIBXML_DTDATTR — установить атрибуты DTD по умолчанию. LIBXML_DTDLOAD — загрузить дополнительные подмножества LIBXML_DTDVALID — проверка достоверности DTD. LIBXML_NOBLANKS — удалить пустые узлы LIBXML_NOCDATA — установить CDATA в текстовый узел. LIBXML_NOEMPTYTAG — расширяет пустые теги (например, <br/> до <br></br>), допустимо только в функциях DOMDocument->save() и DOMDocument->saveXML(). LIBXML_NOENT — замещающая сущность LIBXML_NOERROR — не отображать отчеты об ошибках LIBXML_NONET — прекратить доступ к сети при загрузке документа. LIBXML_NOWARNING — не отображать отчеты с предупреждениями. LIBXML_NOXMLDECL — отбрасывать объявления XML при сохранении документа. LIBXML_NSCLEAN — удалить избыточные объявления пространства имен. LIBXML_PARSEHUGE — устанавливает флаг XML_PARSE_HUGE, который ослабляет любые ограничения, налагаемые анализатором. Это повлияет на такие вещи, как максимальная глубина документа и ограничения на размер текстового узла. LIBXML_XINCLUDE — вместо этого используйте XInclude LIBXML_ERR_ERROR — получить исправимые ошибки. LIBXML_ERR_FATAL — Получена фатальная ошибка. LIBXML_ERR_NONE — не получать ошибки LIBXML_ERR_WARNING — получение простых предупреждений. LIBXML_VERSION — получить версию libxml (например, 20605 или 20617). LIBXML_DOTTED_VERSION — получить версию libxml, отмеченную точками (например, 2.6.5 или 2.6.17). |
нс | Необязательный. Указывает префикс пространства имен или URI. |
is_prefix | Необязательный. Указывает логическое значение. TRUE, если ns — это префикс, FALSE, если ns — это URI. По умолчанию установлено значение ЛОЖЬ. |
Возвращаемое значение: | Возвращает объект SimpleXMLElement в случае успеха или FALSE в случае неудачи. |
---|---|
PHP-версия: | 5+ |
Выходные данные для каждого элемента в строке XML:
<?php$note=<<<XML<note><to>Тове</to><from>Яни</from><heading>Напоминание</heading><body>Не забудь меня в эти выходные!</ body></note>XML;$xml=simplexml_load_string($note);echo $xml->to "<br>";echo $xml->from "<br>";echo. $xml->заголовок "<br>";echo $xml->тело;?>Выведите имя элемента и данные для каждого дочернего узла в строке XML:
<?php$note=<<<XML<note><to>Тове</to><from>Яни</from><heading>Напоминание</heading><body>Не забудь меня в эти выходные!</ body></note>XML;$xml=simplexml_load_string($note);echo $xml->getName() . "<br>";foreach($xml->children() as $child) { echo $child->getName() . $child "<br>" }?>;