Sí, puede usar json_encode
para tomar su cadena HTML y escaparla según sea necesario para que sea válida JSON
(También hará cosas que son innecesarias, lamentablemente, a menos que use banderas para evitarlo). Por ejemplo, si su cadena original es:
<p class="special">content</p>
...json_encode producirá esto:
"<p class=\"special\">content<\/p>"
Notarás que tiene una barra invertida innecesaria antes del / cerca del final. Puedes usar el JSON_UNESCAPED_SLASHES marca para evitar las barras invertidas innecesarias. json_encode(theString, JSON_UNESCAPED_SLASHES); produce:
"<p class=\"special\">content</p>"