PHP DOMDocument pobiera atrybut atrybutu
Witaj Mam odpowiedź API w formacie xml z szeregiem takich elementów jak:
<item>
<title>blah balh</title>
<pubDate>Tue, 20 Oct 2009 </pubDate>
<media:file date="today" data="example text string"/>
</item>
Chcę użyć DOMDocument, aby pobrać atrybut „dane” ze znacznika „media: plik”. Moja próba poniżej nie działa:
$xmldoc = new DOMDocument();
$xmldoc->load('api response address');
foreach ($xmldoc->getElementsByTagName('item') as $feeditem) {
$nodes = $feeditem->getElementsByTagName('media:file');
$linkthumb = $nodes->item(0)->getAttribute('data');
}
Co ja robię źle? Proszę pomóż.
EDIT: Nie mogę zostawić komentarzy z jakiegoś powodu Mark. Dostaję błąd
Call to a member function getAttribute() on a non-object
kiedy uruchamiam mój kod. Próbowałem też
$nodes = $feeditem->getElementsByTagNameNS('uri','file');
$linkthumb = $nodes->item(0)->getAttribute('data');
gdzie uri jest uri odnoszącym się do przestrzeni nazw mediów (NS), ale znowu ten sam problem.
Zauważ, że element multimedialny ma formę, nie sądzę, że jest to częścią problemu, ponieważ generalnie nie mam problemu z analizowaniem atrybutu.