PHP извлекает тэги XML

Я на самом деле новичок с этими вещами XML. Я понимаю, что такое DOMDocument,DOMNOdeList и т. Д., Используя http://www.php.net/manual/en/intro.dom.php

так вот в чем проблема..

http://jobhits.co.uk/services/rss?k=job

канал выше возвращает документ XML. я могу успешно получить имена тегов, такие как заголовок, описание и ссылку, используя эти коды

$doc->load('http://jobhits.co.uk/services/rss?k=job');
$items = $doc->getElementsByTagName("item");

foreach($items as $item){
    $titles[] = $item->getElementsByTagName("title");
}

проблема в том, что в этом документе есть определенный "тэгоподобный"

<a10:updated></a10:updated>

я пытался получить это с помощью

$update[] = $item->getElementsByTagName("a10:updated");

..то провал

вот пример xml http://piratelufi.com/ark/gettagname.xml или вы можете использовать строку внутри метода load выше:)

Кстати, я не могу использовать simpleXML и предопределенные классы, насколько это возможно, спасибо:D

2 ответа

Решение

Ты ищешь getElementsByTagNameNS,

a10 jsut обозначает, что обновленный элемент находится в другом пространстве имен. Толстая кишка : это специальный символ в этом контексте. В начале вашего примера xml (последний URL) вы найдете определение этого пространства имен: <rss xmlns:a10="http://www.w3.org/2005/Atom" version="2.0">, Так что вам нужно getElementsByTagNameNS, Я предполагаю что-то вроде: getElementsByTagNameNS("http://www.w3.org/2005/Atom","updated")может помочь.

Другие вопросы по тегам