php method to determine whether the data is json: 1. Create a PHP sample file; 2. Use the "function analyzeJson($json_str) {...}" method to determine whether the data is json.
The operating environment of this article: windows7 system, PHP version 7.4, DELL G3 computer
How does php determine whether the data is json?
php method to determine whether it is in json format
http://www.poluoluo.com/jzxy/201403/265005.html
How does PHP determine whether the data is json?
First of all, remember that json_encode returns a string, and json_decode returns an object.
Determine if the data is not in JSON format:
The code is as follows:
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)
The code is as follows :
function is_json($string) { json_decode($string); return (json_last_error() == JSON_ERROR_NONE); }
The 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
The code is as follows:
/** * 解析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 learning: "PHP Video Tutorial 》
The above is the detailed content of How to determine whether the data is json in php. For more information, please follow other related articles on the PHP Chinese website!