【PHP】JSONエンコード、デコード処理中に発生したエラーを取得する。

めも。

json_last_error()を用いる。

$str = '{"hoge": "foo", "piyo"}';

$json = json_decode($str);

$err = json_last_error();

var_dump($err);

↓

int(4)

返却される整数値に対応する定数は下記の通り。
上から順に0,1,2,3,4,5と対応する。

JSON_ERROR_NONE
JSON_ERROR_DEPTH
JSON_ERROR_STATE_MISMATCH
JSON_ERROR_CTRL_CHAR
JSON_ERROR_SYNTAX
JSON_ERROR_UTF8