С помощью PHP5 есть способ запросить XML-файл, похожий на запрос к базе данных? Если бы у меня был XML-файл с 50 входами в гостиницу, как я могу запросить XML-файл, чтобы получить конкретную запись? Также я мог бы реорганизовать XML-записи по полю, такие как поле даты? Итак, если бы я хотел отобразить записи в порядке убывания даты, могу ли я это сделать?
Возможно с помощью xpath ( simplexml или domxpath )
Однако сортировать неинтуитивно
пример с помощью simplexml:
$str = '<hotels> <hotel> <id>1</id> <name>Hilton</name> <date>2011-01-01</date> </hotel> <hotel> <id>2</id> <name>Accor</name> <date>2011-01-02</date> </hotel> <hotel> <id>3</id> <name>Sands</name> <date>2011-01-03</date> </hotel> ... etc </hotels>'; $xml = simplexml_load_string($str); /* find a specic hotel with name=Sands */ $found = $xml->xpath('/hotels/hotel/name[.="Sands"]'); /* order by date */ $sort = array(); foreach ($xml->hotel as $obj) { $sort[(string)$obj->date] = $obj; } arsort($sort);
Значение, если у меня был xml-файл с 50 входами в гостиницу, используя PHP5, могу ли я запросить файл xml, чтобы получить конкретную запись?
Взгляните на XPath .
Изменить: Хорошо, я не должен читать так быстро, взгляните на SimpleXML , это позволит вам загружать XML-файл и выполнять на нем запросы, точнее, смотреть на это .