Информер курса валют ЦБ РФ   •   Магазин расширений
932 просм
0 комм
Поделиться:

Как получить параметры из XML-файла на PHP?

Представим, что перед вами стоит задача – спарсить данные из XML-файла. Поскольку структура таких файлов может быть разной, то и трудности при написании своего скрипта также могут быть разными.

Сегодня на примере одного из таких файлов я покажу, как с помощью PHP получить тот или иной параметр.

Итак, перед нами файл price.xml с примерно такой структурой:

<offers>
	<offer id="102" available="true">
		<url>www.pandoge.com</url>
		<name>Коробка</name>
		<param name="Высота">60</param>
		<param name="Ширина">20</param>
		<param name="Цвет">Синий</param>
	</offer>
</offers>

Для теста получим его содержимое, а именно – данные из поля URL:

<?php
	header("Content-Type: text/html; charset=utf-8");
	$xml = simplexml_load_file('./price.xml');
	
	foreach ($xml->offer as $offer) {
		echo $offer->url;
	}
?>

Вроде бы все просто. А теперь попробуем получить значение, например, параметра «цвет» – и у большинства новичков здесь начинают возникать трудности.

А решается эта проблема довольно просто с помощью использования «XPath» – специального языка, созданного для запросов к элементам XML.

Реализация:

<?php
	header("Content-Type: text/html; charset=utf-8");
	$xml = simplexml_load_file('./price.xml');
	
	foreach ($xml->offer as $offer) {
		echo $offer->xpath('param[@name="Цвет"]')[0];
	}
?>

В таком случае мы получаем значение «Синий», что нам и необходимо, а остальные параметры - получаются по аналогии.

0
комментарий
Оставить комментарий:
Нажимая кнопку «Отправить» вы даете согласие на обработку своих персональных данных.
Ваше Имя
Ваш E-mail
Текст комментария