3v4l.org

run code in 300+ PHP versions simultaneously
<?php $xml = <<<XML <?xml version="1.0" encoding="UTF-8"?> <cats> <cat order="first"> <name>Lucy</name> <coat>Tortoiseshell</coat> <breed>Domestic Longhair</breed> </cat> <cat order="second"> <name>Ricky</name> <coat>Gray Tabby</coat> <breed>Maine Coon mix</breed> </cat> </cats> XML; $reader = new \XMLReader(); $dom = new \DOMDocument(); $reader->open('data://text/plain,' . urlencode($xml)); while ($reader->read()) { if ($reader->nodeType === \XMLReader::ELEMENT) { if ($reader->name === 'cat') { $node = $reader->expand(); $dom->appendChild($dom->importNode($node, true)); } } } var_dump($dom);
Output for git.master, git.master_jit, rfc.property-hooks
object(DOMDocument)#2 (38) { ["config"]=> NULL ["doctype"]=> NULL ["implementation"]=> string(22) "(object value omitted)" ["documentElement"]=> string(22) "(object value omitted)" ["actualEncoding"]=> NULL ["encoding"]=> NULL ["xmlEncoding"]=> NULL ["standalone"]=> bool(true) ["xmlStandalone"]=> bool(true) ["version"]=> string(3) "1.0" ["xmlVersion"]=> string(3) "1.0" ["strictErrorChecking"]=> bool(true) ["documentURI"]=> NULL ["formatOutput"]=> bool(false) ["validateOnParse"]=> bool(false) ["resolveExternals"]=> bool(false) ["preserveWhiteSpace"]=> bool(true) ["recover"]=> bool(false) ["substituteEntities"]=> bool(false) ["firstElementChild"]=> string(22) "(object value omitted)" ["lastElementChild"]=> string(22) "(object value omitted)" ["childElementCount"]=> int(2) ["nodeName"]=> string(9) "#document" ["nodeValue"]=> NULL ["nodeType"]=> int(9) ["parentNode"]=> NULL ["childNodes"]=> string(22) "(object value omitted)" ["firstChild"]=> string(22) "(object value omitted)" ["lastChild"]=> string(22) "(object value omitted)" ["previousSibling"]=> NULL ["nextSibling"]=> NULL ["attributes"]=> NULL ["ownerDocument"]=> NULL ["namespaceURI"]=> NULL ["prefix"]=> string(0) "" ["localName"]=> NULL ["baseURI"]=> NULL ["textContent"]=> string(127) " Lucy Tortoiseshell Domestic Longhair Ricky Gray Tabby Maine Coon mix " }

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
34.88 ms | 405 KiB | 8 Q