I have errors when I want to print the result of an evaluate expression with XPath.
$url = $xpath->evaluate(‘//a/@href’, $event);
echo $url ;
I have this error : Catchable fatal error: Object of class DOMNodeList could not be converted to string
My code :
<?php
// Get the HTML Source Code
$url='http://www.parisbouge.com/events/2012/05/01/';
$source = file_get_contents($url);
// DOM document Creation
$doc = new DOMDocument;
$doc->loadHTML($source);
// DOM XPath Creation
$xpath = new DOMXPath($doc);
// Get all events
$events = $xpath->query('//li[@class="nom"]');
// Count number of events
printf('There is %d events<br />', $events->length);
// List all events
for($i = 0; $i < ($events->length); $i++) {
$event = $events->item($i);
$url = $xpath->evaluate('//a/@href', $event);
$nom = $xpath->evaluate('//a/text()', $event);
$lieu = $xpath->evaluate('../li[@class="lieu"]/a/text()', $event);
echo "Result : $url $nom $lieu <br/>";
}
?>
Try this to get information about nodes.
Don’t forget add checking if node exists etc. To check if there is any nodes you can check nodeList lenght or suppres errors how “Gordon” suggested.