заменить все, кроме определенных тегов HTML с htmlspecialchars () в PHP?
Я хотел бы обработать мой пользовательский ввод, чтобы разрешить только определенные HTML-теги, и заменить другие их HTML-сущностями, а также заменить не-теги-символы. Например, если бы я только хотел разрешить<b>
и<a>
тег, затем
allow_only("This is <b>bold</b> and this is <i>italic</i>.
Moreover 2<3 and <a href='google.com'>this is a link</a>.","<b><a>");
должен производить
This is <b>bold</b> and this is <i>italic</i>.
Moreover 2<3 and <a href='google.com'>this is a link</a>.
Как я могу сделать это в PHP? Я в курсеstrip_tags()
это можетУдалить нежелательные теги полностью, и я в курсеhtmlspecialchars()
который может заменитьвсе теги их сущностями html, но ни один, где только определенные теги заменяются. Как это можно сделать в PHP?
И если нет «общего» способа сделать это, как я должен вообще продолжать обрабатывать пользовательский ввод, который может иметь действительный регулярный HTML, но также может иметь<
признаки и потенциально опасный HTML-код?