json_last_error()

创建于 2024-12-03 / 20
字体: [默认] [大] [更大]

❮ PHP JSON 参考手册

实例

返回上次发生的错误:

<?php
// An invalid json string
$string = "{'Peter':35,'Ben':37,'Joe':43}";

echo "Decoding: " . $string;
json_decode($string);
echo "<br>Error: ";

switch (json_last_error()) {
  case JSON_ERROR_NONE:
    echo "No errors";
    break;
  case JSON_ERROR_DEPTH:
    echo "Maximum stack depth exceeded";
    break;
  case JSON_ERROR_STATE_MISMATCH:
    echo "Invalid or malformed JSON";
    break;
  case JSON_ERROR_CTRL_CHAR:
    echo "Control character error";
    break;
  case JSON_ERROR_SYNTAX:
    echo "Syntax error";
    break;
  case JSON_ERROR_UTF8:
    echo "Malformed UTF-8 characters";
    break;
  default:
    echo "Unknown error";
    break;
}
?>
运行实例 »

定义和用法

json_last_error() 函数返回最后发生的错误。


语法

json_last_error()

参数值

NONE.

技术细节

返回值: 返回一个整数,值可以是以下常量之一:
  • JSON_ERROR_NONE(未发生错误)
  • JSON_ERROR_DEPTH(已超出最大堆栈深度)
  • JSON_ERROR_STATE_MISMATCH(无效/格式错误的 JSON)
  • JSON_ERROR_CTRL_CHAR(控制字符错误)
  • JSON_ERROR_SYNTAX(语法错误)
  • JSON_ERROR_UTF8(格式错误的 UTF-8 字符。PHP 5.3)
  • JSON_ERROR_RECURSION(无效的递归引用值。PHP 5.5)
  • JSON_ERROR_INF_OR_NAN(无效的 nan 或 inf 值。PHP 5.5)
  • JSON_ERROR_UNSUPPORTED_TYPE(无效类型。PHP 5.5)
  • JSON_ERROR_INVALID_PROPERTY_NAME(无效的属性名称。PHP 7.0)
  • JSON_ERROR_UTF16(格式错误的 UTF-16 字符。PHP 7.0)
PHP 版本: 5.3+

❮ PHP JSON 参考手册
0 人点赞过