Генератор CSS-свойства «border-radius»   •   Online-инструменты
1 272 просм
0 комм
Поделиться:
Лучший платный хостинг!

Месяц в подарок. Помощь с переездом. Быстрая тех. поддержка. Цена от 115р в месяц. Скидки, спеши!

vk.cc/88lMkj

Как получить параметры из 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
комментариев
Гостям запрещено учавствовать в обсуждениях сайта. Авторизуйтесь, чтобы иметь возможность оставить свое мнение о материале или задать вопрос.