Maison >développement back-end >Problème PHP >PHP détecte s'il s'agit de json
Méthode de PHP pour déterminer s'il est au format json
Tout d'abord, rappelez-vous que json_encode renvoie une chaîne, tandis que json_decode renvoie un objet
Juger que les données ne sont pas au format JSON :
function is_not_json($str){ return is_null(json_decode($str)); }
Juger que les données sont des données json légales : (la version PHP est supérieure à 5.3)
function is_json($string) { www.jb51.net json_decode($string); return (json_last_error() == JSON_ERROR_NONE); }
La fonction json_last_error() renvoie l'erreur survenue lors du processus d'encodage et de décodage des données
Remarque : la chaîne exploitée par l'encodage json et le décodage doit être UTF8
Exemple :
/** * 解析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; }
Si ce n'est pas json, renvoie false.
Tutoriel recommandé : Tutoriel vidéo PHP
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!