3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php //Source: https://bugs.php.net/bug.php?id=63898 /* $key = utf8_encode("Foo " . chr(163)); $array = array($key => ""); var_dump($array); $json = json_encode($array); var_dump($json); $array2 = array($key); var_dump($array2, json_encode($array2)); var_dump(json_encode(utf8_encode('hey now ' . chr(180) . ' you’re dumb'))); var_dump(json_encode('hey now ' . chr(180) . ' you’re dumb')); */ $text = 'hey ' . chr(160); $arr = array('damnit' => $text); $utf = utf8_encode($text); $utfarr = array('damnit' => $utf); $json = json_encode($arr); $utfjson = json_encode($utfarr); var_dump($json, $utfjson); var_dump(json_decode($json), json_decode($utfjson)); /* $x = 'Audio Pass: Get live NFL game audio while you’re on the road with Audio Pass.'; var_dump(htmlentities($x)); var_dump(htmlentities($x, ENT_COMPAT | ENT_SUBSTITUTE, 'ISO-8859-1')); var_dump(htmlentities($x, ENT_COMPAT | ENT_SUBSTITUTE, 'UTF-8')); */
based on qfZd1
Output for 5.5.0 - 5.6.28, hhvm-3.10.0 - 3.12.0, 7.0.0 - 7.1.0
bool(false) string(23) "{"damnit":"hey \u00a0"}" NULL object(stdClass)#1 (1) { ["damnit"]=> string(6) "hey  " }
Output for 5.2.7 - 5.3.13, 5.3.15 - 5.4.45
string(15) "{"damnit":null}" string(23) "{"damnit":"hey \u00a0"}" object(stdClass)#1 (1) { ["damnit"]=> NULL } object(stdClass)#2 (1) { ["damnit"]=> string(6) "hey  " }
Output for 5.3.14
Warning: json_encode(): Invalid UTF-8 sequence in argument in /in/XpY6t on line 24 bool(false) string(23) "{"damnit":"hey \u00a0"}" NULL object(stdClass)#1 (1) { ["damnit"]=> string(6) "hey  " }
Output for 5.2.0 - 5.2.6
string(17) "{"damnit":"hey "}" string(23) "{"damnit":"hey \u00a0"}" object(stdClass)#1 (1) { ["damnit"]=> string(4) "hey " } object(stdClass)#2 (1) { ["damnit"]=> string(6) "hey  " }
Output for 5.0.0 - 5.1.6
Fatal error: Call to undefined function json_encode() in /in/XpY6t on line 24
Process exited with code 255.
Output for 4.4.5 - 4.4.9
Fatal error: Call to undefined function: json_encode() in /in/XpY6t on line 24
Process exited with code 255.
Output for 4.3.2 - 4.4.4
Fatal error: Call to undefined function: json_encode() in /in/XpY6t on line 24
Process exited with code 255.
Output for 4.3.0 - 4.3.1
Fatal error: Call to undefined function: json_encode() in /in/XpY6t on line 24