Encodage HTML dans JSON
Lorsque vous travaillez avec des pages Web dynamiques, la nécessité de transmettre le contenu HTML d'un script côté serveur au client peut survenir. Une approche courante consiste à utiliser JSON (JavaScript Object Notation) comme support d'échange de données.
Le HTML peut-il être envoyé via JSON ?
Oui, il est possible de transmettre du contenu HTML via JSON. Cependant, comme JSON est un format texte, les caractères spéciaux du code HTML, tels que les guillemets et les barres obliques inverses, doivent être échappés pour garantir la compatibilité.
Utiliser json_encode pour échapper au HTML
PHP fournit la fonction json_encode pour convertir les structures de données PHP, y compris les chaînes, au format JSON. Par défaut, les caractères spéciaux de la chaîne d'entrée seront échappés. Par exemple, la chaîne HTML suivante :
<p class="special">content</p>
sera codée comme :
"<p class=\"special\">content<\/p>"
Cependant, cette chaîne codée contient une barre oblique inverse inutile avant le "/>" de fermeture. tag.
Empêcher les échappements inutiles
Si vous le souhaitez, vous pouvez utiliser l'indicateur JSON_UNESCAPED_SLASHES pour empêcher l'ajout de barres obliques inverses inutiles. En modifiant l'exemple ci-dessus :
<code class="php">echo json_encode($html, JSON_UNESCAPED_SLASHES);</code>
produira la chaîne codée suivante :
"<p class=\"special\">content</p>"
En utilisant ces techniques, vous pouvez envoyer efficacement du contenu HTML échappé via JSON, permettant une intégration transparente entre le serveur -scripts latéraux et pages Web.
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!