Как я пошел бы об удалении тегов script и всего в них использующий PHP?
Используйте очиститель HTML , как предложил Пекка.
Никогда не используйте регулярное выражение в этом случае
Вот пример, фильтры регулярных выражений не работают, работает в браузерах (проверено в firefox)
<script script=">>><script></script><script>//" >
/**/
alert(1);
</script
>
Как говорит Дэвид, фильтрации только тегов сценария недостаточно, если вы хотите очистить входящие данные. HTML Purifier обещает предоставить полный пакет:
HTML Purifier - это соответствующая стандартам библиотека фильтров HTML, написанная на PHP. HTML Purifier не только удалит весь вредоносный код (более известный как XSS) с помощью тщательно проверенного, безопасного, но разрешающего белого списка, он также обеспечит безопасность ваших документов {{ 1}} стандартов, чего можно достичь только при всестороннем знании спецификаций W3C.
Вы можете сделать это с помощью функции strip_tags
<?php
$text = '<p>Test paragraph.</p><!-- Comment --> <a href="#fragment">Other text</a>';
echo strip_tags($text);
// Allow <p> and <a>
echo strip_tags($text, '<p><a>');
?>