Funções PHP JSON
Introdução ao PHPJSON
A extensão JSON implementa o formato de intercâmbio de dados JavaScript Object Notation.
No PHP 5, a decodificação é feita por um analisador baseado no JSON_checker de Douglas Crockford.
O PHP 7 possui um analisador novo e aprimorado especificamente escrito para PHP e licenciado sob a licença PHP.
Instalação
A partir do PHP 5.2.0, as funções JSON são habilitadas por padrão. Não há necessidade de instalação para usar essas funções.
Funções PHP JSON
Function | Description |
---|---|
json_decode() | Decodes a JSON string |
json_encode() | Encode a value to JSON format |
json_last_error() | Returns the last error occurred |
json_last_error_msg() | Returns the error string of the last json_encode() or json_decode() call |
Constantes JSON predefinidas do PHP
Constant | Type | Description |
---|---|---|
JSON_ERROR_NONE | Integer | No error has occurred |
JSON_ERROR_DEPTH | Integer | Maximum stack depth has been exceeded |
JSON_ERROR_STATE_MISMATCH | Integer | Invalid/Malformed JSON |
JSON_ERROR_CTRL_CHAR | Integer | Control character error |
JSON_ERROR_SYNTAX | Integer | Syntax error |
JSON_ERROR_UTF8 | Integer | Malformed UTF-8 characters. PHP 5.3 |
JSON_ERROR_RECURSION | Integer | Invalid recursive reference values. PHP 5.5 |
JSON_ERROR_INF_OR_NAN | Integer | Invalid NAN or INF values. PHP 5.5 |
JSON_ERROR_UNSUPPORTED_TYPE | Integer | Invalid type. PHP 5.5 |
JSON_ERROR_INVALID_PROPERTY_NAME | Integer | Invalid property name. PHP 7.0 |
JSON_ERROR_UTF16 | Integer | Malformed UTF-16 characters. PHP 7.0 |
JSON_BIGINT_AS_STRING | Integer | |
JSON_OBJECT_AS_ARRAY | Integer | |
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_PARTIAL_OUTPUT_ON_ERROR | Integer | |
JSON_PRESERVE_ZERO_FRACTION | Integer | |
JSON_UNESCAPED_LINE_TERMINATORS | Integer | |
JSON_INVALID_UTF8_IGNORE | Integer | |
JSON_INVALID_UTF8_SUBSTITUTE | Integer | |
JSON_THROWN_ON_ERROR | Integer |