json_last_error_msg
(PHP 5 >= 5.5.0, PHP 7, PHP 8)
json_last_error_msg — 返回最后一次调用 json_encode() 或 json_decode() 时产生的错误信息
说明
json_last_error_msg(): string
当没有设置 JSON_THROW_ON_ERROR
参数时,返回最后一次调用 json_encode() 或 json_decode()
产生的错误信息。
参数
此函数没有参数。
返回值
成功则返回错误信息,如果没有错误产生则返回 "No error"
。

User Contributed Notes 1 note
Anonymous ¶
7 years ago
Here's an updated version of the function:
<?php
if (!function_exists('json_last_error_msg')) {
function json_last_error_msg() {
static $ERRORS = array(
JSON_ERROR_NONE => 'No error',
JSON_ERROR_DEPTH => 'Maximum stack depth exceeded',
JSON_ERROR_STATE_MISMATCH => 'State mismatch (invalid or malformed JSON)',
JSON_ERROR_CTRL_CHAR => 'Control character error, possibly incorrectly encoded',
JSON_ERROR_SYNTAX => 'Syntax error',
JSON_ERROR_UTF8 => 'Malformed UTF-8 characters, possibly incorrectly encoded'
);
$error = json_last_error();
return isset($ERRORS[$error]) ? $ERRORS[$error] : 'Unknown error';
}
}
?>
备份地址:http://www.lvesu.com/blog/php/function.json-last-error-msg.php