2011-10-04 9 views
14

Próbuję przeanalizować strumień XML rss. Faktycznie, zostanie zgłoszony błąd:Obiekt klasy DOMElement nie można przekonwertować na ciąg

Catchable fatal error: Object of class DOMElement could not be converted to string in ... 

Chcę uzyskać "test" wartość znacznika "link"

Oto mój kod:

//check if url contents xml 
      $content = file_get_contents($flux); 

      $xml = new DOMDocument; 
      $xml->loadXML($content); 

      //get the link 
      $link = $xml->getElementsByTagName('link')->item(0); 

      echo $link; 

Oto flux:

<?xml version="1.0" encoding="ISO-8859-15" ?> 
<rss version="2.0"> 
    <channel> 
     <title>test</title> 
     <link>http://test.fr</link> 
    </channel> 
</rss> 

Ktoś może mi pomóc?

+0

możliwe help: http://stackoverflow.com/questions/548744/php-xpath-question – diEcho

Odpowiedz

21

$link to obiekt, którego nie można przekonwertować na ciąg znaków (some objects can).

Aby zobaczyć, który obiekt jest, użyj var_dump($link);. Zakładam, że jest to DOMElementDocs, patrz link dla wszystkich właściwości i metod, które ma do zaoferowania, np.

echo $link->tagName; 

lub

echo $link->textContent; 
+0

tagName powraca "link", nie "test". Dziękuję i tak –

+0

tak to było textContent, dziękuję bardzo =) –