yo uso esta y la verdad funciona bien, pero puede que falten algunos caracteres:
Código:
Las comillas simples y dobles son reemplazadas por tildes. preg_replace('/[^a-zA-Z0-9\s.ñáéíóú#&*´ºª+-@()_:;.,¿?{}=]/','',$var);