下列常量由此扩展定义,且仅在此扩展编译入 PHP 或在运行时动态载入时可用。
以下常量表示了 json_last_error() 所返回的错误类型。
JSON_ERROR_NONE
     (integer)
   JSON_ERROR_DEPTH
     (integer)
   JSON_ERROR_STATE_MISMATCH
     (integer)
   JSON_ERROR_CTRL_CHAR
     (integer)
   JSON_ERROR_SYNTAX
     (integer)
   JSON_ERROR_UTF8
     (integer)
   JSON_ERROR_RECURSION
     (integer)
   JSON_PARTIAL_OUTPUT_ON_ERROR option was
     given, NULL will be encoded in the place of the recursive reference.
     Available since PHP 5.5.0.
    
   JSON_ERROR_INF_OR_NAN
     (integer)
   NAN
     or INF.
     If the JSON_PARTIAL_OUTPUT_ON_ERROR option was
     given, 0 will be encoded in the place of these
     special numbers.
     Available since PHP 5.5.0.
    
   JSON_ERROR_UNSUPPORTED_TYPE
     (integer)
   JSON_PARTIAL_OUTPUT_ON_ERROR option was
     given, NULL will be encoded in the place of the unsupported value.
     Available since PHP 5.5.0.
    
   JSON_ERROR_INVALID_PROPERTY_NAME
    (integer)
   JSON_ERROR_INVALID_PROPERTY_NAME
    (integer)
   下面的常量可以和 json_encode() 的 form 选项结合使用。
JSON_BIGINT_AS_STRING
     (integer)
   JSON_OBJECT_AS_ARRAY
    (integer)
   TRUE.
     Available since PHP 5.4.0.
    
   下面的常量可以和 json_encode() 的 form 选项结合使用。
JSON_HEX_TAG
     (integer)
   JSON_HEX_AMP
     (integer)
   JSON_HEX_APOS
     (integer)
   JSON_HEX_QUOT
     (integer)
   JSON_FORCE_OBJECT
     (integer)
   JSON_NUMERIC_CHECK
     (integer)
   JSON_PRETTY_PRINT
     (integer)
   JSON_UNESCAPED_SLASHES
     (integer)
   JSON_UNESCAPED_UNICODE
     (integer)
   JSON_PARTIAL_OUTPUT_ON_ERROR
     (integer)
   JSON_PRESERVE_ZERO_FRACTION
     (integer)
   JSON_UNESCAPED_LINE_TERMINATORS
    (integer)
   JSON_UNESCAPED_UNICODE is supplied. It uses the same
     behaviour as it was before PHP 7.1 without this constant.
     Available since PHP 7.1.0.