52680.fb2 Справочник по PHP - читать онлайн бесплатно полную версию книги . Страница 59

Справочник по PHP - читать онлайн бесплатно полную версию книги . Страница 59

<name>Mr. Coder</name>

<actor>El Act&amp;#211;r</actor>

</character>

</characters>

<plot>

So, this language. It's like, a programming language. Or is it a

scripting language? All is revealed in this thrilling horror spoof

of a documentary.

</plot>

<rating type="thumbs">7</rating>

<rating type="stars">5</rating>

</movie>

</movies>

XML;

?>

Простоту работы с SimpleXML можно продемонстрировать извлечением текста из заданного элемента XML-документа.

Пример 2. Получение текста в <plot>

<?php

include 'example.php';

$xml = simplexml_load_string($xmlstr);

echo $xml-&gt;movie[0]-&gt;plot; // "So this language. It's like..."

?>

Пример 3. Работа с группой элементов в SimpleXML

Можно применять циклы для получения дочерних элементов заданного элемента (если дочерние элементы существуют).

<?php

include 'example.php';

$xml = simplexml_load_string($xmlstr);

/* Для каждого элемента &lt;movie&gt; мы отображаем элемент . */

foreach ($xml-&gt;movie as $movie) {

echo $movie-&gt;plot, '&lt;br /&gt;';

}

?>

Пример 4. Использование атрибутов

Выше было показано как работать с элементами XML-документа и их значениями. SimpleXML также имеет доступ к атрибутам элементов. Атрибуты указанного элемента доступны как ассоциативный массив данного элемента.

<?php

include 'example.php';

$xml = simplexml_load_string($xmlstr);

/* Получение доступа к атрибутам элементов &lt;rating&gt; для первого кино.*/

foreach ($xml-&gt;movie[0]-&gt;rating as $rating) {

switch((string) $rating['type']) { // Возвращает атрибуты как элементы массива

case 'thumbs':

echo $rating, ' thumbs up';

break;

case 'stars':

echo $rating, ' stars';

break;

}

}

?>

Пример 5. Сравнение элементов и их атрибутов с текстовыми значениями