Php F::Log(‘JSON: ‘.json_last_error_msg(), LOG_ERR);
This tutorials show you how to use json_last_error_msg.
json_last_error_msg is used in the following way.
F::Log('JSON: '.json_last_error_msg(), LOG_ERR); This function has no parameters.
The json_last_error_msg is declared as follows:
json_last_error_msg(): string
The return value is Returns the error message on success, or «No error» if no error has occurred.
Examples
/* w w w .d e m o 2 s . c o m*/ /* Codeine * @author bergstein@trickyplan.com * @description: * @package Codeine * @version 8.x */ setFn('Read', function ($Call) < $Result = jd($Call['Value'], true); if (json_last_error() > 0) < F::Log('JSON: '.json_last_error_msg(), LOG_ERR); F::Log($Call['Value'], LOG_ERR); > return $Result; >); setFn('Write', function ($Call) < return j($Call['Value'], JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT); >); setFn('Write.Call', function ($Call) < $Call['Value'] = j($Call['Value']); return $Call; >);
Related
- Php ‘Failed to parse json string. Error: ‘.json_last_error_msg()
- Php . (function_exists(‘json_last_error_msg’) ? ‘: ‘ . json_last_error_msg() : »)
- Php . json_last_error_msg());
- Php F::Log(‘JSON: ‘.json_last_error_msg(), LOG_ERR);
- Php Yii::error(‘Has no body. json: ‘ . json_last_error_msg(), ‘ApnsGcm’);
- Php array(‘URL’ => htmlentities($sUrl, ENT_COMPAT, ‘UTF-8’), ‘MSG’ => json_last_error_msg())));
- Php echo ‘Invalid JSON: ‘ . json_last_error_msg() . «\n»;
demo2s.com | Email: | Demo Source and Support. All rights reserved.
json_last_error
Возвращает последнюю ошибку (если она есть), произошедшую во время последнего кодирования/декодирования JSON если при вызове не использовался флаг JSON_THROW_ON_ERROR .
Список параметров
У этой функции нет параметров.
Возвращаемые значения
Возвращает целочисленное значение, которое может быть одной из следующих констант:
Константа | Значение | Доступность |
---|---|---|
JSON_ERROR_NONE | Ошибок нет | |
JSON_ERROR_DEPTH | Достигнута максимальная глубина стека | |
JSON_ERROR_STATE_MISMATCH | Неверный или некорректный JSON | |
JSON_ERROR_CTRL_CHAR | Ошибка управляющего символа, возможно неверная кодировка | |
JSON_ERROR_SYNTAX | Синтаксическая ошибка | |
JSON_ERROR_UTF8 | Некорректные символы UTF-8, возможно неверная кодировка | |
JSON_ERROR_RECURSION | Одна или несколько зацикленных ссылок в кодируемом значении | |
JSON_ERROR_INF_OR_NAN | Одно или несколько значений NAN или INF в кодируемом значении | |
JSON_ERROR_UNSUPPORTED_TYPE | Передано значение с неподдерживаемым типом | |
JSON_ERROR_INVALID_PROPERTY_NAME | Имя свойства не может быть закодировано | |
JSON_ERROR_UTF16 | Некорректный символ UTF-16, возможно некорректно закодирован |
Примеры
Пример #1 Пример использования json_last_error()
// Неверная json-строка, которая вызовет синтаксическую ошибку,
// здесь в качестве кавычек мы используем ‘ вместо »
$json [] = «» ;
foreach ( $json as $string ) echo ‘Декодируем: ‘ . $string ;
json_decode ( $string );
switch ( json_last_error ()) case JSON_ERROR_NONE :
echo ‘ — Ошибок нет’ ;
break;
case JSON_ERROR_DEPTH :
echo ‘ — Достигнута максимальная глубина стека’ ;
break;
case JSON_ERROR_STATE_MISMATCH :
echo ‘ — Некорректные разряды или несоответствие режимов’ ;
break;
case JSON_ERROR_CTRL_CHAR :
echo ‘ — Некорректный управляющий символ’ ;
break;
case JSON_ERROR_SYNTAX :
echo ‘ — Синтаксическая ошибка, некорректный JSON’ ;
break;
case JSON_ERROR_UTF8 :
echo ‘ — Некорректные символы UTF-8, возможно неверно закодирован’ ;
break;
default:
echo ‘ — Неизвестная ошибка’ ;
break;
>
Результат выполнения данного примера:
Декодируем: - Ошибок нет Декодируем: - Синтаксическая ошибка, некорректный JSON
Пример #2 Совместное использование json_last_error() и json_encode()
// Некорректная последовательность UTF8
$text = «\xB1\x31» ;
?php
$json = json_encode ( $text );
$error = json_last_error ();
var_dump ( $json , $error === JSON_ERROR_UTF8 );
?>
Результат выполнения данного примера:
Пример #3 json_last_error() и JSON_THROW_ON_ERROR
// Некорректная последовательность UTF8, вызывающая JSON_ERROR_UTF8
json_encode ( «\xB1\x31» );
?php
// Не вызовет ошибки JSON
json_encode ( ‘okay’ , JSON_THROW_ON_ERROR );
// Глобальное состояние не будет изменено json_encode()
var_dump ( json_last_error () === JSON_ERROR_UTF8 );
?>
Результат выполнения данного примера:
json_last_error
Возвращает последнюю ошибку (если она есть), произошедшую во время последнего кодирования/декодирования JSON если при вызове не использовался флаг JSON_THROW_ON_ERROR .
Список параметров
У этой функции нет параметров.
Возвращаемые значения
Возвращает целочисленное значение, которое может быть одной из следующих констант:
Константа | Значение | Доступность |
---|---|---|
JSON_ERROR_NONE | Ошибок нет | |
JSON_ERROR_DEPTH | Достигнута максимальная глубина стека | |
JSON_ERROR_STATE_MISMATCH | Неверный или некорректный JSON | |
JSON_ERROR_CTRL_CHAR | Ошибка управляющего символа, возможно неверная кодировка | |
JSON_ERROR_SYNTAX | Синтаксическая ошибка | |
JSON_ERROR_UTF8 | Некорректные символы UTF-8, возможно неверная кодировка | |
JSON_ERROR_RECURSION | Одна или несколько зацикленных ссылок в кодируемом значении | |
JSON_ERROR_INF_OR_NAN | Одно или несколько значений NAN или INF в кодируемом значении | |
JSON_ERROR_UNSUPPORTED_TYPE | Передано значение с неподдерживаемым типом | |
JSON_ERROR_INVALID_PROPERTY_NAME | Имя свойства не может быть закодировано | |
JSON_ERROR_UTF16 | Некорректный символ UTF-16, возможно некорректно закодирован |
Примеры
Пример #1 Пример использования json_last_error()
// Неверная json-строка, которая вызовет синтаксическую ошибку,
// здесь в качестве кавычек мы используем ‘ вместо »
$json [] = «» ;
foreach ( $json as $string ) echo ‘Декодируем: ‘ . $string ;
json_decode ( $string );
switch ( json_last_error ()) case JSON_ERROR_NONE :
echo ‘ — Ошибок нет’ ;
break;
case JSON_ERROR_DEPTH :
echo ‘ — Достигнута максимальная глубина стека’ ;
break;
case JSON_ERROR_STATE_MISMATCH :
echo ‘ — Некорректные разряды или несоответствие режимов’ ;
break;
case JSON_ERROR_CTRL_CHAR :
echo ‘ — Некорректный управляющий символ’ ;
break;
case JSON_ERROR_SYNTAX :
echo ‘ — Синтаксическая ошибка, некорректный JSON’ ;
break;
case JSON_ERROR_UTF8 :
echo ‘ — Некорректные символы UTF-8, возможно неверно закодирован’ ;
break;
default:
echo ‘ — Неизвестная ошибка’ ;
break;
>
Результат выполнения данного примера:
Декодируем: - Ошибок нет Декодируем: - Синтаксическая ошибка, некорректный JSON
Пример #2 Совместное использование json_last_error() и json_encode()
// Некорректная последовательность UTF8
$text = «\xB1\x31» ;
?php
$json = json_encode ( $text );
$error = json_last_error ();
var_dump ( $json , $error === JSON_ERROR_UTF8 );
?>
Результат выполнения данного примера:
Пример #3 json_last_error() и JSON_THROW_ON_ERROR
// Некорректная последовательность UTF8, вызывающая JSON_ERROR_UTF8
json_encode ( «\xB1\x31» );
?php
// Не вызовет ошибки JSON
json_encode ( ‘okay’ , JSON_THROW_ON_ERROR );
// Глобальное состояние не будет изменено json_encode()
var_dump ( json_last_error () === JSON_ERROR_UTF8 );
?>
Результат выполнения данного примера: