Как определить, является ли строка допустимым JSON?

Я избегал бы использования кода NRC для чего-либо кроме изучения понятий.

я думаю, что Вы ищете, Блиц ++

42
задан Paul Sweatte 8 August 2012 в 21:41
поделиться

3 ответа

Если вы используете встроенный в json_decode функции PHP, json_last_error возвращает последнюю ошибку (например, JSON_ERROR_SYNTAX , когда ваша строка не была JSON).

66
ответ дан 26 November 2019 в 23:29
поделиться

Разве у вас не работает json_decode () с json_last_error () ? Вы ищете просто способ сказать «это похоже на JSON» или действительно проверить его? json_decode () - единственный способ эффективно проверить его в PHP.

4
ответ дан 26 November 2019 в 23:29
поделиться

А как насчет использования json_decode , который должен return null , если данная строка не была действительными данными в кодировке JSON?

См. пример 3 на странице руководства:

// the following strings are valid JavaScript but not valid JSON

// the name and value must be enclosed in double quotes
// single quotes are not valid 
$bad_json = "{ 'bar': 'baz' }";
json_decode($bad_json); // null

// the name must be enclosed in double quotes
$bad_json = '{ bar: "baz" }';
json_decode($bad_json); // null

// trailing commas are not allowed
$bad_json = '{ bar: "baz", }';
json_decode($bad_json); // null
17
ответ дан 26 November 2019 в 23:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: