En mi experiencia, la mejor manera de manipular ciertas etiquetas HTML en mi experiencia es para usar un analizador DOM como HTML purifier, sin embargo, esto puede ser un poco complicado de configurar e incluso un poco exagerado para su aplicación. Si tuviera que hacerlo todo de nuevo, utilizaría un formato diferente (como el formato wiki o el código bb) y no el HTML, de esa manera usted puede convertir sus propias etiquetas simples en HTML y usted tiene control total sobre la salida.
Volviendo a la pregunta en cuestión, una solución rápida para usted sería usar strip_tags()
y pasar un segundo argumento de una lista blanca de etiquetas, aunque esto no es 100% perfecto/seguro para poner HTML, por lo que a largo plazo ejecutar debe utilizar un analizador DOM o no permitir la entrada de HTML.
No quiero quitar las etiquetas, quiero escapar de ellas. Mira mi ejemplo, la etiqueta span todavía está allí, pero se escapó, lo que significa que mostrará – keepwalking
. Si quieres jugar con algunas etiquetas HTML y otras no, seriamente reconsideraría cómo y por qué estás haciendo esto porque lo harás. ** nunca ** sea capaz de analizar con precisión o seguridad el DOM con expresiones regulares. Para el diseño usaría etiquetas personalizadas y luego escapé ** todo ** HTML. – Dunhamzzz
Sí, no puedo usar etiquetas personalizadas porque los mensajes provienen de un filtro de correo electrónico, etc ... es complicado. Resolví el problema con un simple preg_replace. Gracias por el soporte. – keepwalking