Las extrañas reglas de análisis de las etiquetas `<script>` de HTML y el escape de JSON
Este artículo profundiza en las reglas de análisis, a menudo no intuitivas, de las etiquetas `` de HTML, que pueden romper páginas web de forma sorprendente. Explica cómo los navegadores entran en diferentes estados (datos de script, datos de script escapados, datos de script doblemente escapados) al analizar el contenido dentro de las etiquetas `<script>`. Entrar en el estado 'datos de script doblemente escapados' impide que la etiqueta de cierre `` funcione correctamente, lo que provoca la ruptura de la representación de la página. El artículo recomienda usar `json_encode($data, JSON_HEX_TAG | JSON_UNESCAPED_SLASHES)` (o similar) para escapar los caracteres `<` y `>` en las cadenas JSON, evitando así el estado 'datos de script doblemente escapados' y garantizando la representación correcta de la página.