|
Базовое использование SimpleXMLНекоторые примеры этого руководства включают XML-строку. Вместо того, чтобы повторять ее в каждом примере, положите эту строку в файл, который и включайте в каждом примере. Эта строка приведена в следующем примере. Помимо этого можно создать XML-документ и считывать его функцией simplexml_load_file().
Пример #1 Файл example.php с XML строкой
<?php SimpleXML пользоваться очень просто! Попробуйте получить какую-нибудь строку или число из базового XML документа. Пример #2 Получение части документа <plot>
<?php Результат выполнения данного примера: Таким образом, это язык. Это все равно язык программирования. Или это скриптовый язык? Все раскрывается в этом документальном фильме, похожем на фильм ужасов. В PHP получить доступ к элементу в XML документе, содержащим в названии недопустимые символы (например, дефис), можно путем заключения данного имени элемента в фигурные скобки и апострофы. Пример #3 Получение строки <line>
<?php Результат выполнения данного примера: PHP решает все мои проблемы в web
Пример #4 Доступ к не уникальным элементам в SimpleXML В том случае, если существует несколько экземпляров дочерних элементов в одном родительском элементе, то нужно применять стандартные методы итерации.
<?php Результат выполнения данного примера: Ms. Coder играет Onlivia Actora Mr. Coder играет El Act?r
Пример #5 Использование атрибутов До сих пор мы только читали названия и значения элементов. SimpleXML может так же получать доступ к атрибутам элемента. Получить доступ к атрибуту элемента можно так же, как к элементам массива array.
<?php Результат выполнения данного примера: 7 thumbs up5 stars
Пример #6 Сравнение элементов и атрибутов с текстом Для сравнения элемента или атрибута со строкой или для передачи в функцию в качестве текста, необходимо привести его к строке, используя (string). В противном случае, PHP будет рассматривать элемент как объект.
<?php Результат выполнения данного примера: Мой любимый фильм.PHP: Появление Парсера
Пример #7 Сравнение двух элементов Два элемента SimpleXMLElements считаются различными, даже если они указывают на один и тот же объект начиная с PHP 5.2.0.
<?php Результат выполнения данного примера: bool(false)
Пример #8 Использование XPath SimpleXML включает в себя встроенную поддержку XPath. Поиск всех элементов <character>:
<?php '//' служит в качестве шаблона. Для указания абсолютного пути, опустите одну из косых черт. Результат выполнения данного примера: Ms. Coder играет Onlivia Actora Mr. Coder играет by El Act?r
Пример #9 Установка значений Данные в SimpleXML не могут быть постоянными. Объект позволяет манипулировать всеми элементами.
<?php Результат выполнения данного примера: <?xml version="1.0" standalone="yes"?> <movies> <movie> <title>PHP: Появление Парсера</title> <characters> <character> <name>Miss Coder</name> <actor>Onlivia Actora</actor> </character> <character> <name>Mr. Coder</name> <actor>El ActÓr</actor> </character> </characters> <plot> Таким образом, это язык. Это все равно язык программирования. Или это скриптовый язык? Все раскрывается в этом документальном фильме, похожем на фильм ужасов. </plot> <great-lines> <line>PHP решает все мои задачи в web</line> </great-lines> <rating type="thumbs">7</rating> <rating type="stars">5</rating> </movie> </movies>
Пример #10 Добавление элементов и атрибутов Начиная с PHP 5.1.3, SimpleXML имеет возможность легко добавлять дочерние элементы и атрибуты.
<?php Результат выполнения данного примера: <?xml version="1.0" standalone="yes"?> <movies> <movie> <title>PHP: Появление Парсера</title> <characters> <character> <name>Ms. Coder</name> <actor>Onlivia Actora</actor> </character> <character> <name>Mr. Coder</name> <actor>El ActÓr</actor> </character> <character><name>Mr. Parser</name><actor>John Doe</actor></character></characters> <plot> Таким образом, это язык. Это все равно язык программирования. Или это скриптовый язык? Все раскрывается в этом документальном фильме, похожем на фильм ужасов. </plot> <great-lines> <line>PHP решает все мои задачи в web</line> </great-lines> <rating type="thumbs">7</rating> <rating type="stars">5</rating> <rating type="mpaa">PG</rating></movie> </movies>
Пример #11 Взаимодействие с DOM PHP может преобразовывать XML узлы из SimpleXML в формат DOM и наоборот. Этот пример показывает, как можно изменить DOM элемент в SimpleXML.
<?php Результат выполнения данного примера: blah |
|