3v4l.org

run code in 500+ PHP versions simultaneously
<?php $xml = "<?xml version='1.0' encoding='ISO-8859-1'?> <delta> <history> <detail> <id>one</id> <degree> <dname>alpha</dname> <dates> <StartDate> <Year>1998</Year> </StartDate> <EndDate> <Year>2002</Year> </EndDate> </dates> </degree> </detail> <detail> <id>two</id> <degree> <dname>beta</dname> <dates> <StartDate> <Year>2006</Year> </StartDate> <EndDate> <Year>2008</Year> </EndDate> </dates> </degree> </detail> </history> </delta>"; $doc = new DOMDocument; $doc->preserveWhiteSpace = false; $doc->loadXML($xml); $xpath = new DOMXPath($doc); $items = $doc->getElementsByTagName("detail"); $subitemarray = array(); $icounter = 0; foreach ($items as $item) { $query = "//*[contains(local-name(), 'Date')] "; $entries = $xpath->query($query, $item); $dates["startdate"] = $entries[0]->nodeValue; $dates["enddate"] = $entries[1]->nodeValue; $subitemarray[$icounter++] = $dates; } var_dump($subitemarray);
Output for 5.6.3 - 5.6.40, 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.34, 8.2.0 - 8.2.30, 8.3.0 - 8.3.30, 8.4.1 - 8.4.18, 8.5.0 - 8.5.3
array(2) { [0]=> array(2) { ["startdate"]=> string(4) "1998" ["enddate"]=> string(4) "2002" } [1]=> array(2) { ["startdate"]=> string(4) "1998" ["enddate"]=> string(4) "2002" } }
Output for 5.6.0 - 5.6.2
Fatal error: Cannot use object of type DOMNodeList as array in /in/Aie3G on line 47
Process exited with code 255.

preferences:
89.98 ms | 2001 KiB | 4 Q