Sync
Новичок
SimpleXML->xpath проблема с поиском по аттрибутам
Есть такого рода xml:
Код
Выводит массив этих resort'ов, но не могу добиться работы такого запроса:
то есть чтобы получить конкретный регион по ключу.
Поддерживает ли xpath в SimpleXML такую нотацию запросов?
Есть такого рода xml:
PHP:
<?xml version="1.0" encoding="utf-8"?>
<TourML xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0" date="2006-12-27" time="16:14:21" xmlns="http://tourml.ru/products/2004-04-19">
<header>
<comment />
<loadTime timeValue="8562.312" xmlns="http://www.megatec.ru/tourml/extensions" />
</header>
<references>
<countries>
<country key="9" name="Egypt" nameLat="Egypt" />
<country key="47" name="Ukraine" nameLat="Ukraine" />
<country key="99999999" fake="true" stdKey="UNKNOWN" name="UNKNOWN" nameLat="UNKNOWN" code="UNKNOWN" />
</countries>
<resorts>
<resort key="37" name="Sharm" countryKey="9" />
<resort key="36" name="Soma Bay" countryKey="9" />
<resort key="35" name="Safaga" countryKey="9" />
<resort key="34" name="Cairo" countryKey="9" />
<resort key="30" name="Taba" countryKey="9" />
</resorts>
</references>
</TourML>
PHP:
$xml = simplexml_load_file('GetPriceListByTour.xml');
$xml->registerXPathNamespace('tour', 'http://tourml.ru/products/2004-04-19');
$resorts = $xml->xpath("//tour:resorts");
print_R($resorts);
PHP:
$resorts = $xml->xpath("//tour:resorts/resort[@key=35]");
Поддерживает ли xpath в SimpleXML такую нотацию запросов?