No możesz zrobić np tak:
Kod
//zakłada że używasz POST?
foreach($_POST as &$wartosc)
$wartosc = htmlspecialchars($wartosc);
Ampersand ( & ) przed zmienną $wartosc to referencja. Zrobiłem tak dlatego, że $wartosc jest kopią tablicy $_POST. Jeśli chcesz żeby wewnątrz pętli foreach coś się w niej zmieniło musisz użyć właśnie referencji - & . Minus takiego rozwiązania objawi się najprawdopodobniej jeśli użyjesz metody GET. Wtedy pętla przetworzy nawet to czego byś nie chciał (np. jakieś zmienne przekazywane w url, a nie pochodzące z formularza...) .