3v4l.org - online PHP & HHVM shell, execute code in 100+ different versions!

<?php /** * PHP DOM and JavaScript with HTML entities * * @link http://stackoverflow.com/q/18487515/367456 */ # 3v4l.org low php version stopper if (version_compare(PHP_VERSION, '5.0.5', '<=')) return; $doc = new DOMDocument("1.0"); $doc->loadXML('<head/>'); $javascriptCode = "\n if (1 < 4) {\n alert(\"hello\");\n }\n"; $script = $doc->createElement('script'); $script->appendChild($doc->createCDATASection($javascriptCode)); $heads = $doc->getElementsByTagName('head'); $head = $heads->item(0); $scriptInHead = $head->appendChild($script); echo 'libxml: ', LIBXML_DOTTED_VERSION, "\n" , "\nXML:\n", $doc->saveXML() , "\nHTML:\n", $doc->saveHTML() ;
Output for 5.3.25 - 5.3.29, 5.4.16 - 5.6.0, php7@20140507 - 20140901, hhvm-3.2.0
libxml: 2.9.1 XML: <?xml version="1.0"?> <head><script><![CDATA[ if (1 < 4) { alert("hello"); } ]]></script></head> HTML: <head><script> if (1 < 4) { alert("hello"); } </script></head>
Output for 5.1.0 - 5.3.14, 5.4.0 - 5.4.4, hhvm-3.1.0
libxml: 2.7.8 XML: <?xml version="1.0"?> <head><script><![CDATA[ if (1 < 4) { alert("hello"); } ]]></script></head> HTML: <head><script> if (1 < 4) { alert("hello"); } </script></head>
Output for hhvm-3.0.1
libxml: 2.6.26 XML: <?xml version="1.0"?> <head><script><![CDATA[ if (1 < 4) { alert("hello"); } ]]></script></head> HTML: <head><script> if (1 < 4) { alert("hello"); } </script></head>
Output for 5.3.15 - 5.3.24, 5.4.5 - 5.4.15
libxml: 2.8.0 XML: <?xml version="1.0"?> <head><script><![CDATA[ if (1 < 4) { alert("hello"); } ]]></script></head> HTML: <head><script> if (1 < 4) { alert("hello"); } </script></head>
Output for 4.3.0 - 5.0.5