Maison > développement back-end > tutoriel php > Comment puis-je empêcher « json_encode() » d'échapper aux barres obliques en PHP ?

Comment puis-je empêcher « json_encode() » d'échapper aux barres obliques en PHP ?

Susan Sarandon
Libérer: 2024-11-27 12:24:14
original
905 Les gens l'ont consulté

How Can I Prevent `json_encode()` From Escaping Forward Slashes in PHP?

json_encode() Échapper aux barres obliques

Lors du décodage du JSON à partir d'Instagram, il est courant de rencontrer des barres obliques échappées lors du réencodage et de la mise en cache les données. Cela est dû au fait que json_encode() échappe automatiquement les barres obliques par défaut.

Désactivation de l'échappement des barres obliques

Heureusement, PHP 5.4 propose une solution pour désactiver ce comportement d'échappement en utilisant le Indicateur JSON_UNESCAPED_SLASHES. Voici comment l'utiliser :

json_encode($data, JSON_UNESCAPED_SLASHES);
Copier après la connexion

En définissant cet indicateur, json_encode() conservera les barres obliques sans échappement.

Attention au contexte Web/HTML

Il est crucial de noter que la désactivation de la barre oblique dans un contexte Web/HTML (par exemple, transmettre des données JSON à un navigateur) peut introduire des failles de sécurité. Les barres obliques avec échappement sont essentielles pour empêcher les attaques de script intersite (XSS). Par conséquent, l'utilisation de JSON_UNESCAPED_SLASHES doit être soigneusement envisagée dans de tels scénarios.

Pour les versions PHP antérieures à 5.4

Si vous utilisez des versions PHP antérieures à 5.4, vous peut modifier des fonctions existantes comme json_encode_no_backslashes() (disponible sur https://snippets.dzone.com/posts/show/7487) pour répondre à vos besoins.

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 de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal