3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php var_dump('JSON_ERROR_DEPTH' . ' : ' . JSON_ERROR_DEPTH); var_dump('JSON_ERROR_STATE_MISMATCH' . ' : ' . JSON_ERROR_STATE_MISMATCH); var_dump('JSON_ERROR_CTRL_CHAR' . ' : ' . JSON_ERROR_CTRL_CHAR); var_dump('JSON_ERROR_SYNTAX' . ' : ' . JSON_ERROR_SYNTAX); var_dump('JSON_ERROR_UTF8' . ' : ' . JSON_ERROR_UTF8); $a = json_encode('wrong json'); var_dump(json_last_error()); var_dump(json_last_error_msg()); /*switch (json_last_error()) { case JSON_ERROR_DEPTH: $error = 'Maximum stack depth exceeded'; break; case JSON_ERROR_STATE_MISMATCH: $error = 'Underflow or the modes mismatch'; break; case JSON_ERROR_CTRL_CHAR: $error = 'Unexpected control character found'; break; case JSON_ERROR_SYNTAX: $error = 'Syntax error, malformed JSON'; break; case JSON_ERROR_UTF8: $error = 'Malformed UTF-8 characters, possibly incorrectly encoded'; break; default: $error = 'Unknown error'; break; } var_dump($error);*/
based on KSg5G
Output for 5.5.0 - 7.2.0
string(20) "JSON_ERROR_DEPTH : 1" string(29) "JSON_ERROR_STATE_MISMATCH : 2" string(24) "JSON_ERROR_CTRL_CHAR : 3" string(21) "JSON_ERROR_SYNTAX : 4" string(19) "JSON_ERROR_UTF8 : 5" int(0) string(8) "No error"
Output for 5.3.3 - 5.4.45
string(20) "JSON_ERROR_DEPTH : 1" string(29) "JSON_ERROR_STATE_MISMATCH : 2" string(24) "JSON_ERROR_CTRL_CHAR : 3" string(21) "JSON_ERROR_SYNTAX : 4" string(19) "JSON_ERROR_UTF8 : 5" int(0) Fatal error: Call to undefined function json_last_error_msg() in /in/pCdvq on line 11
Process exited with code 255.
Output for 5.3.0 - 5.3.2
string(20) "JSON_ERROR_DEPTH : 1" string(29) "JSON_ERROR_STATE_MISMATCH : 2" string(24) "JSON_ERROR_CTRL_CHAR : 3" string(21) "JSON_ERROR_SYNTAX : 4" Notice: Use of undefined constant JSON_ERROR_UTF8 - assumed 'JSON_ERROR_UTF8' in /in/pCdvq on line 7 string(33) "JSON_ERROR_UTF8 : JSON_ERROR_UTF8" int(0) Fatal error: Call to undefined function json_last_error_msg() in /in/pCdvq on line 11
Process exited with code 255.
Output for 5.2.0 - 5.2.17
Notice: Use of undefined constant JSON_ERROR_DEPTH - assumed 'JSON_ERROR_DEPTH' in /in/pCdvq on line 3 string(35) "JSON_ERROR_DEPTH : JSON_ERROR_DEPTH" Notice: Use of undefined constant JSON_ERROR_STATE_MISMATCH - assumed 'JSON_ERROR_STATE_MISMATCH' in /in/pCdvq on line 4 string(53) "JSON_ERROR_STATE_MISMATCH : JSON_ERROR_STATE_MISMATCH" Notice: Use of undefined constant JSON_ERROR_CTRL_CHAR - assumed 'JSON_ERROR_CTRL_CHAR' in /in/pCdvq on line 5 string(43) "JSON_ERROR_CTRL_CHAR : JSON_ERROR_CTRL_CHAR" Notice: Use of undefined constant JSON_ERROR_SYNTAX - assumed 'JSON_ERROR_SYNTAX' in /in/pCdvq on line 6 string(37) "JSON_ERROR_SYNTAX : JSON_ERROR_SYNTAX" Notice: Use of undefined constant JSON_ERROR_UTF8 - assumed 'JSON_ERROR_UTF8' in /in/pCdvq on line 7 string(33) "JSON_ERROR_UTF8 : JSON_ERROR_UTF8" Fatal error: Call to undefined function json_last_error() in /in/pCdvq on line 10
Process exited with code 255.
Output for 5.0.0 - 5.1.6
Notice: Use of undefined constant JSON_ERROR_DEPTH - assumed 'JSON_ERROR_DEPTH' in /in/pCdvq on line 3 string(35) "JSON_ERROR_DEPTH : JSON_ERROR_DEPTH" Notice: Use of undefined constant JSON_ERROR_STATE_MISMATCH - assumed 'JSON_ERROR_STATE_MISMATCH' in /in/pCdvq on line 4 string(53) "JSON_ERROR_STATE_MISMATCH : JSON_ERROR_STATE_MISMATCH" Notice: Use of undefined constant JSON_ERROR_CTRL_CHAR - assumed 'JSON_ERROR_CTRL_CHAR' in /in/pCdvq on line 5 string(43) "JSON_ERROR_CTRL_CHAR : JSON_ERROR_CTRL_CHAR" Notice: Use of undefined constant JSON_ERROR_SYNTAX - assumed 'JSON_ERROR_SYNTAX' in /in/pCdvq on line 6 string(37) "JSON_ERROR_SYNTAX : JSON_ERROR_SYNTAX" Notice: Use of undefined constant JSON_ERROR_UTF8 - assumed 'JSON_ERROR_UTF8' in /in/pCdvq on line 7 string(33) "JSON_ERROR_UTF8 : JSON_ERROR_UTF8" Fatal error: Call to undefined function json_encode() in /in/pCdvq on line 9
Process exited with code 255.
Output for 4.4.5 - 4.4.9
Notice: Use of undefined constant JSON_ERROR_DEPTH - assumed 'JSON_ERROR_DEPTH' in /in/pCdvq on line 3 string(35) "JSON_ERROR_DEPTH : JSON_ERROR_DEPTH" Notice: Use of undefined constant JSON_ERROR_STATE_MISMATCH - assumed 'JSON_ERROR_STATE_MISMATCH' in /in/pCdvq on line 4 string(53) "JSON_ERROR_STATE_MISMATCH : JSON_ERROR_STATE_MISMATCH" Notice: Use of undefined constant JSON_ERROR_CTRL_CHAR - assumed 'JSON_ERROR_CTRL_CHAR' in /in/pCdvq on line 5 string(43) "JSON_ERROR_CTRL_CHAR : JSON_ERROR_CTRL_CHAR" Notice: Use of undefined constant JSON_ERROR_SYNTAX - assumed 'JSON_ERROR_SYNTAX' in /in/pCdvq on line 6 string(37) "JSON_ERROR_SYNTAX : JSON_ERROR_SYNTAX" Notice: Use of undefined constant JSON_ERROR_UTF8 - assumed 'JSON_ERROR_UTF8' in /in/pCdvq on line 7 string(33) "JSON_ERROR_UTF8 : JSON_ERROR_UTF8" Fatal error: Call to undefined function: json_encode() in /in/pCdvq on line 9
Process exited with code 255.
Output for 4.3.2 - 4.4.4
Notice: Use of undefined constant JSON_ERROR_DEPTH - assumed 'JSON_ERROR_DEPTH' in /in/pCdvq on line 3 string(35) "JSON_ERROR_DEPTH : JSON_ERROR_DEPTH" Notice: Use of undefined constant JSON_ERROR_STATE_MISMATCH - assumed 'JSON_ERROR_STATE_MISMATCH' in /in/pCdvq on line 4 string(53) "JSON_ERROR_STATE_MISMATCH : JSON_ERROR_STATE_MISMATCH" Notice: Use of undefined constant JSON_ERROR_CTRL_CHAR - assumed 'JSON_ERROR_CTRL_CHAR' in /in/pCdvq on line 5 string(43) "JSON_ERROR_CTRL_CHAR : JSON_ERROR_CTRL_CHAR" Notice: Use of undefined constant JSON_ERROR_SYNTAX - assumed 'JSON_ERROR_SYNTAX' in /in/pCdvq on line 6 string(37) "JSON_ERROR_SYNTAX : JSON_ERROR_SYNTAX" Notice: Use of undefined constant JSON_ERROR_UTF8 - assumed 'JSON_ERROR_UTF8' in /in/pCdvq on line 7 string(33) "JSON_ERROR_UTF8 : JSON_ERROR_UTF8" Fatal error: Call to undefined function: json_encode() in /in/pCdvq on line 9
Process exited with code 255.
Output for 4.3.0 - 4.3.1
Notice: Use of undefined constant JSON_ERROR_DEPTH - assumed 'JSON_ERROR_DEPTH' in /in/pCdvq on line 3 string(35) "JSON_ERROR_DEPTH : JSON_ERROR_DEPTH" Notice: Use of undefined constant JSON_ERROR_STATE_MISMATCH - assumed 'JSON_ERROR_STATE_MISMATCH' in /in/pCdvq on line 4 string(53) "JSON_ERROR_STATE_MISMATCH : JSON_ERROR_STATE_MISMATCH" Notice: Use of undefined constant JSON_ERROR_CTRL_CHAR - assumed 'JSON_ERROR_CTRL_CHAR' in /in/pCdvq on line 5 string(43) "JSON_ERROR_CTRL_CHAR : JSON_ERROR_CTRL_CHAR" Notice: Use of undefined constant JSON_ERROR_SYNTAX - assumed 'JSON_ERROR_SYNTAX' in /in/pCdvq on line 6 string(37) "JSON_ERROR_SYNTAX : JSON_ERROR_SYNTAX" Notice: Use of undefined constant JSON_ERROR_UTF8 - assumed 'JSON_ERROR_UTF8' in /in/pCdvq on line 7 string(33) "JSON_ERROR_UTF8 : JSON_ERROR_UTF8" Fatal error: Call to undefined function: json_encode() in /in/pCdvq on line 9