Constantes pré-definidas
As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.
As seguintes constantes indicam o tipo de erro retornado pela função json_last_error().
-
JSON_ERROR_NONE(integer) - Sem erros. Disponível desde o PHP 5.3.0.
-
JSON_ERROR_DEPTH(integer) - O limite de pilha de chamadas foi ultrapassado Disponível desde o PHP 5.3.0.
-
JSON_ERROR_STATE_MISMATCH(integer) - Ocorre em underflows ou com incongruência de modos. Disponível desde o PHP 5.3.0.
-
JSON_ERROR_CTRL_CHAR(integer) - Erro de controle de caracteres, possivelmente erro de enconding. Disponível desde o PHP 5.3.0.
-
JSON_ERROR_SYNTAX(integer) - Erro de sintaxe. Disponível desde o PHP 5.3.0.
-
JSON_ERROR_UTF8(integer) - Caracteres UTF-8 mal formados, possivelmente erro de enconding. Esta constante está disponível desde o PHP 5.3.3.
-
JSON_ERROR_RECURSION(integer) -
O objeto ou array passado para json_encode() inclui referências recursivas, e não pode ser formatada. Se a opção
JSON_PARTIAL_OUTPUT_ON_ERRORfoi informada,NULLserá substituido no lugar da referência recursiva.Esta constante está disponível desde o PHP 5.5.0.
-
JSON_ERROR_INF_OR_NAN(integer) -
Um valor passado para json_encode() inclui
NANouINF. Se a opçãoJSON_PARTIAL_OUTPUT_ON_ERRORfoi informada, 0 será substituído no lugar do número especial.Esta constante está disponível desde o PHP 5.5.0.
-
JSON_ERROR_UNSUPPORTED_TYPE(integer) -
Um valor de um tipo não suportado foi informado para json_encode(), por exemplo um resource. Se a opção
JSON_PARTIAL_OUTPUT_ON_ERRORfoi informada,NULLserá substitui ao invés do valor não suportado.Esta constante está disponível desde o PHP 5.5.0.
As seguintes constantes podem ser combinadas para formar opções para a função json_encode().
-
JSON_HEX_TAG(integer) - Todos os caracteres < e > serão convertidos para \u003C and \u003E. Disponível desde o PHP 5.3.0.
-
JSON_HEX_AMP(integer) - Todos os caracteres & serão convertidos para \u0026. Disponível desde o PHP 5.3.0.
-
JSON_HEX_APOS(integer) - Todos os caracteres ' serão convertidos para \u0027. Disponível desde o PHP 5.3.0.
-
JSON_HEX_QUOT(integer) - Todos os caracteres " serão convertidos para \u0022. Disponível desde o PHP 5.3.0.
-
JSON_FORCE_OBJECT(integer) - Imprime um objeto em vez de um array quando um array não recursivo é usado. Muito útil quando o chamador espera um objeto mas o array está vazio. Disponível desde o PHP 5.3.0.
-
JSON_NUMERIC_CHECK(integer) - Codifica strings numéricas como números. Disponível desdee o PHP 5.3.3.
-
JSON_BIGINT_AS_STRING(integer) - Codifica números grandes como seu valor string original. Disponível desde o PHP 5.4.0.
-
JSON_PRETTY_PRINT(integer) - Formata os dados retornados com espaços em branco. Disponível desde PHP 5.4.0.
-
JSON_UNESCAPED_SLASHES(integer) - Não escapa o caracter /. Disponível desde o PHP 5.4.0.
-
JSON_UNESCAPED_UNICODE(integer) - Codifica caracteres Unicode multibyte literalmente (default é formatar como \uXXXX). Disponível desde o PHP 5.4.0.