Funções da JSON
PHP Manual

json_last_error

(PHP 5 >= 5.3.0)

json_last_errorReturns the last error occurred

Descrição

int json_last_error ( void )

Returns the last error (if any) occurred by last JSON parsing.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer, the value can be one of the following constants:

JSON error codes
Constant Meaning Availability
JSON_ERROR_NONE No error has occurred  
JSON_ERROR_DEPTH The maximum stack depth has been exceeded  
JSON_ERROR_CTRL_CHAR Control character error, possibly incorrectly encoded  
JSON_ERROR_SYNTAX Syntax error  
JSON_ERROR_UTF8 Malformed UTF-8 characters, possibly incorrectly encoded PHP 5.3.1

Exemplos

Exemplo #1 json_last_error() example

<?php
// A valid json string
$json[] = '{"Organization": "PHP Documentation Team"}';

// An invalid json string which will cause an syntax 
// error, in this case we used ' instead of " for quotation
$json[] = "{'Organization': 'PHP Documentation Team'}";


foreach(
$json as $string)
{
    echo 
'Decoding: ' $string;
    
json_decode($string);

    switch(
json_last_error())
    {
        case 
JSON_ERROR_DEPTH:
            echo 
' - Maximum stack depth exceeded';
        break;
        case 
JSON_ERROR_CTRL_CHAR:
            echo 
' - Unexpected control character found';
        break;
        case 
JSON_ERROR_SYNTAX:
            echo 
' - Syntax error, malformed JSON';
        break;
        case 
JSON_ERROR_NONE:
            echo 
' - No errors';
        break;
    }

    echo 
PHP_EOL;
}
?>

O exemplo acima irá imprimir:

Decoding: {"Organization": "PHP Documentation Team"} - No errors
Decoding: {'Organization': 'PHP Documentation Team'} - Syntax error, malformed JSON

Veja Também


Funções da JSON
PHP Manual