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 */ $doc = new DOMDocument(); $doc->loadHTML('<head/>'); $script = $doc->createElement('script', "\n if (1 < 4) {\n alert(\"hello\");\n }\n"); $head = $doc->getElementsByTagName('head')->item(0); $scriptInHead = $head->appendChild($script); echo 'libxml: ', LIBXML_DOTTED_VERSION, "\n", $doc->saveHTML();
Output for 5.4.35, 5.5.19, 5.6.3, php7@20141101, hhvm-3.3.1 - 3.4.0
libxml: 2.9.2 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd"> <html><head><script> if (1 < 4) { alert("hello"); } </script></head></html>
Output for 5.3.25 - 5.3.29, 5.4.16 - 5.4.34, 5.5.0 - 5.5.18, 5.6.0 - 5.6.2, php7@20140507 - 20141001, hhvm-3.2.0 - 3.3.0
libxml: 2.9.1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd"> <html><head><script> if (1 < 4) { alert("hello"); } </script></head></html>
Output for 5.1.0 - 5.3.14, 5.4.0 - 5.4.4, hhvm-3.1.0
libxml: 2.7.8 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd"> <html><head><script> if (1 < 4) { alert("hello"); } </script></head></html>
Output for hhvm-3.0.1
libxml: 2.6.26 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd"> <html><head><script> if (1 < 4) { alert("hello"); } </script></head></html>
Output for 5.3.15 - 5.3.24, 5.4.5 - 5.4.15
libxml: 2.8.0 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd"> <html><head><script> if (1 < 4) { alert("hello"); } </script></head></html>
Output for 5.0.0 - 5.0.5
libxml: Notice: Use of undefined constant LIBXML_DOTTED_VERSION - assumed 'LIBXML_DOTTED_VERSION' in /in/ATVDG on line 15 LIBXML_DOTTED_VERSION <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd"> <html><head><script> if (1 < 4) { alert("hello"); } </script></head></html>
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_OBJECT_OPERATOR in /in/ATVDG on line 12
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.4.1
Parse error: parse error, unexpected T_OBJECT_OPERATOR in /in/ATVDG on line 12
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error in /in/ATVDG on line 12
Process exited with code 255.