Maison >développement back-end >Problème PHP >PHP détecte s'il s'agit de json

PHP détecte s'il s'agit de json

王林
王林original
2019-09-27 17:51:313688parcourir

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn