3v4l.org

run code in 300+ PHP versions simultaneously
<?php $xml = <<<END <?xml version="1.0" encoding="UTF-8"?> <root> <child /> </root> END; $doc = Dom\XMLDocument::createFromString($xml); $root = $doc->firstChild; $text = $root->firstChild; $child = $root->firstElementChild; var_dump('nodeValue'); try { var_dump($text->nodeName); var_dump(get_class($text)); $text->nodeValue = 'Hello'; } catch (Throwable $t) { var_dump($t->getMessage()); } try { var_dump($child->nodeName); var_dump(get_class($child)); $child->nodeValue = 'Hello'; } catch (Throwable $t) { var_dump($t->getMessage()); } try { var_dump($doc->nodeName); var_dump(get_class($doc)); $doc->nodeValue = 'Hello'; } catch (Throwable $t) { var_dump($t->getMessage()); } var_dump('textContent'); try { var_dump($text->nodeName); var_dump(get_class($text)); $text->textContent = 'Hello'; } catch (Throwable $t) { var_dump($t->getMessage()); } try { var_dump($child->nodeName); var_dump(get_class($child)); $child->textContent = 'Hello'; } catch (Throwable $t) { var_dump($t->getMessage()); } try { var_dump($doc->nodeName); var_dump(get_class($doc)); $doc->textContent = 'Hello'; } catch (Throwable $t) { var_dump($t->getMessage()); }
Output for git.master, git.master_jit
string(9) "nodeValue" string(5) "#text" string(8) "Dom\Text" string(5) "child" string(11) "Dom\Element" string(55) "Cannot modify readonly property Dom\Element::$nodeValue" string(9) "#document" string(15) "Dom\XMLDocument" string(59) "Cannot modify readonly property Dom\XMLDocument::$nodeValue" string(11) "textContent" string(5) "#text" string(8) "Dom\Text" string(5) "child" string(11) "Dom\Element" string(9) "#document" string(15) "Dom\XMLDocument" string(61) "Cannot modify readonly property Dom\XMLDocument::$textContent"
Output for rfc.property-hooks
string(9) "nodeValue" string(5) "#text" string(7) "DOMText" string(5) "child" string(10) "DOMElement" string(9) "#document" string(15) "DOM\XMLDocument" string(11) "textContent" string(5) "#text" string(7) "DOMText" string(5) "child" string(10) "DOMElement" string(9) "#document" string(15) "DOM\XMLDocument"

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:
62.8 ms | 407 KiB | 5 Q