Home >Backend Development >PHP Problem >PHP detects whether it is json

PHP detects whether it is json

王林
王林Original
2019-09-27 17:51:313688browse

PHP detects whether it is json

PHP method to determine whether it is in json format

First of all, remember that json_encode returns a string, and json_decode returns an object

Judge that the data is not in JSON format:

function is_not_json($str){ 
    return is_null(json_decode($str));
}

Judge that the data is legal json data: (PHP version is greater than 5.3)

function is_json($string) { www.jb51.net
 json_decode($string);
 return (json_last_error() == JSON_ERROR_NONE);
}

json_last_error() function returns the error that occurred during the data encoding and decoding process

Note: The string operated by json encoding and decoding must be UTF8

Example:

/**
* 解析json串
* @param type $json_str
* @return type
*/
function analyJson($json_str) {
$json_str = str_replace('\\', '', $json_str);
$out_arr = array();
preg_match('/{.*}/', $json_str, $out_arr);
if (!empty($out_arr)) {
$result = json_decode($out_arr[0], TRUE);
} else {
return FALSE;
}
return $result;
}

If it is not json, return false.

Recommended tutorial: PHP video tutorial

The above is the detailed content of PHP detects whether it is json. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn