Php/func json last error

来自菜鸟教程
跳转至:导航、​搜索

PHP json_last_error()函数

❮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()

参数值

没有。

技术细节

返回值:

返回一个整数,该值可以是下列常量之一:

  • 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参考