Рубрики
PHP

Как проверить, является ли строка данными, в формате JSON на PHP

Если есть вероятность, что полученная строка представляет данные в формате JSON, значит нужно это проверить. Чтобы осуществить такую проверку необходимо попытаться конвертировать данные в массив с помощью функции json_decode.

Если при конвертации возникла ошибка, то не содержит JSON, либо содержит ошибки. В любом случае это даст понять, что со строкой что-тоне так. Проверку на ошибки при конвертации следует осуществлять с помощью функции json_last_error().

Если ошибок не возникло, функция вернет JSON_ERROR_NONE.

Раз ошибок нет, значит конвертация прошла успешно и данные являются строкой в формате JSON.

Если результат проверки с помощью функции json_last_error() отличный от JSON_ERROR_NONE, значит возникли ошибки и строка не является JSON.

Пример функции проверки JSON на PHP

/**
 * @param $data
 *
 * @return bool
 */
function isJson( $data ) {
	json_decode( $data, true );

	return json_last_error() == JSON_ERROR_NONE;
}