Userei array_walk()
funzione. È più adatto perché modifica il POST superglobale in modo da sanificare eventuali usi futuri.
array_walk_recursive( $_POST, 'mysql_real_escape_string' );
Tuttavia, assicurati di non fare affidamento su questa linea per proteggere completamente il tuo database dagli attacchi. La migliore protezione consiste nel limitare i set di caratteri per determinati campi. Ex. Le e-mail non contengono virgolette (quindi consenti solo lettere, numeri, @, trattini, ecc.) e i nomi non hanno parentesi al loro interno (quindi consenti solo lettere e caratteri speciali selezionati)
MODIFICA: array_walk()
modificato a array_walk_recursive()
grazie al suggerimento di @Johan. Puntelli a lui.