2008-09-24 4 views

Répondre

18

Parce qu'il fait partie de la norme JSON

http://json.org/

omble

any-Unicode-character- 
    except-"-or-\-or- 
    control-character 
\" 
\\ 
\/ <---- see here? 
\b 
\f 
\n 
\r 
\t 
\u four-hex-digits 
2

C'est probablement un élément de sécurité. La version échappée (par exemple, la sortie) serait analysée comme similaire à la version non échappée, par Javascript (par exemple \/ devient /). Ayant ainsi échappé au slash, il y a moins de risque que le navigateur n'interprète mal la chaîne JavaScript en HTML. Bien sûr, si vous traitez les données correctement, cela ne devrait pas être nécessaire, c'est donc plus une garantie contre un programmeur désemparé qui se tromperait pour lui-même.

2

Votre entrée n'est pas JSON valide, mais l'analyseur JSON de PHP (comme la plupart des parseurs JSON) l'analysera de toute façon.

+0

Qu'est-ce qui est invalide à ce sujet? –

+0

Je crois que l'espace supplémentaire en dehors de votre chaîne ne devrait pas être là. – bot403

Questions connexes