Последние учебники веб-разработки
×

PHP Руководство

PHP ГЛАВНАЯ PHP вступление PHP устанавливать PHP Синтаксис PHP переменные PHP Echo / Версия для печати PHP Типы данных PHP Строки PHP Константы PHP операторы PHP If...Else...Elseif PHP Switch PHP В то время как Loops PHP Для Loops PHP функции PHP Массивы PHP Сортировка массивов PHP Суперглобальные

PHP обращение

PHP форма обращение PHP форма Проверка PHP форма необходимые PHP форма URL/E-mail PHP форма полный

PHP продвинутый

PHP Массивы Мульти PHP Дата и время PHP Включают PHP файл обращение PHP файл Открыть / Read PHP файл Создание / запись PHP файл Загрузить PHP Cookies PHP Sessions PHP фильтры PHP Filters продвинутый PHP Ошибка обращение PHP исключение

MySQL Database

MySQL База данных MySQL соединение MySQL Create DB MySQL Create Таблица MySQL Insert Data MySQL Получить Последняя ID MySQL Вставка нескольких MySQL Prepared MySQL Select Data MySQL Delete Data MySQL Update Data MySQL Limit Data

PHP - XML

PHP XML Парсеры PHP SimpleXML Parser PHP SimpleXML - Get PHP XML Expat PHP XML DOM

PHP - AJAX

AJAX вступление AJAX PHP AJAX База данных AJAX XML AJAX Live Search AJAX RSS Reader AJAX Голосование

PHP Examples

PHP Примеры PHP викторина PHP сертификат

PHP Справка

PHP массив PHP Календарь PHP Дата PHP каталог PHP Ошибка PHP Файловая система PHP Фильтр PHP FTP PHP HTTP PHP Libxml PHP почта PHP математический PHP Разное PHP MySQLi PHP SimpleXML PHP строка PHP XML PHP Zip PHP Часовые пояса

 

PHP XML DOM Parser


Встроенный в DOM-парсер позволяет обрабатывать XML-документы в PHP.


XML DOM Parser

DOM парсер дерева на основе синтаксического анализа.

Посмотрите на следующую долю XML документа:

<?xml version="1.0" encoding="UTF-8"?>
<from>Jani</from>

DOM видит XML выше в виде древовидной структуры:

  • Уровень 1: XML Document
  • Уровень 2: Корневой элемент: <from>
  • Уровень 3: Текстовый элемент: "Jani"

Монтаж

Функции DOM парсер являются частью ядра PHP. Там нет установки, необходимой для использования этих функций.


XML файла

XML файл ниже будет использоваться в нашем примере:

<?xml version="1.0" encoding="UTF-8"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

Загрузка и вывод XML

Мы хотим, чтобы инициализировать XML-парсер, загрузите XML, и вывод его:

пример

<?php
$xmlDoc = new DOMDocument();
$xmlDoc->load("note.xml");

print $xmlDoc->saveXML();
?>

Выход кода выше:

Tove Jani Reminder Don't forget me this weekend!

При выборе "View source" в окне браузера, вы увидите следующий HTML:

<?xml version="1.0" encoding="UTF-8"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

В приведенном выше примере создается DOMDocument-Object и загружает XML из "note.xml" в него.

Тогда saveXML() функция помещает внутренний документ XML в строку, так что мы можем вывести его.


Перебор XML

Мы хотим , чтобы инициализировать XML - парсер, загрузите XML, и цикл через все элементы <note> элемента:

пример

<?php
$xmlDoc = new DOMDocument();
$xmlDoc->load("note.xml");

$x = $xmlDoc->documentElement;
foreach ($x->childNodes AS $item) {
  print $item->nodeName . " = " . $item->nodeValue . "<br>";
}
?>

Выход кода выше:

#text =
to = Tove
#text =
from = Jani
#text =
heading = Reminder
#text =
body = Don't forget me this weekend!
#text =

В приведенном выше примере вы видите, что есть пустые текстовые узлы между каждым элементом.

Когда XML-генерирует, он часто содержит белое-пространство между узлами. XML DOM парсер обрабатывает их как обычные элементы, и если вы не знаете о них, они иногда вызывают проблемы.


Если вы хотите узнать больше о XML DOM, пожалуйста , посетите наш XML учебник .