Ma perché devi passare i dati in arrivo per forza in qualche funzione?
Usali così come li ricevi, che problema ti da se fai così?

Se lo fai per la validazione non è il metodo corretto, perché usi funzioni che modificano i tuoi dati. La validazione non deve modificare i valori, deve solo dirti se sono validi o no.
In questo caso puoi usare un'espressione regolare che accetti solo numeri, lettere ed i simboli che ti aspetti, come il . e il -