J'essaie de gérer les données json mauvaises lorsqu'elles sont analysées via json_decode(). J'utilise le script suivant:Détecter les données de mauvais json dans PHP json_decode()?
if(!json_decode($_POST)) {
echo "bad json data!";
exit;
}
Si $ _POST est égal à:
'{ bar: "baz" }'
Puis json_decode poignées l'amende d'erreur et crache, "mauvaises données JSON!" Cependant, si je mets $ _POST à quelque chose comme « données non valide », il me donne:
Warning: json_decode() expects parameter 1 to be string, array given in C:\server\www\myserver.dev\public_html\rivrUI\public_home\index.php on line 6
bad json data!
Ai-je besoin d'écrire un script personnalisé pour détecter les données JSON valides, ou est-il un autre moyen astucieux pour détecter ce?
'$ _POST' est toujours un tableau c contenant les paramètres * x-www-form-urlencoded * transmis via POST. Comment envoyez-vous vos données à votre script PHP? – Gumbo
Les fonctions json incluses dans PHP ne sont pas beaucoup d'aide. Ils ont beaucoup de problèmes. Jetez un oeil à [json.org] (http://json.org/) pour trouver une bonne bibliothèque. – whiskeysierra