Fino alle precedenti versioni di PHP, per pulire le stringhe da caratteri speciali, si utilizzava la funzione ereg_replace(), ma con la versione 5.3.0 è stata "deprecata" (come si può leggere sul sito php.net), ed oggi è sconsigliato il suo utilizzo.
Al posto della sopracitata funzione, possiamo utilizzare la funzione preg_replace() che ci permette di sostituire tutti quei caratteri non compresi nel range che indicheremo attraverso le espressioni regolari (regular expression).
un esempio di sintassi della funzione per ottenere una stringa pulita è la seguente:
preg_replace("/[^a-zA-Z0-9_-]/", "", $stringa);
una funzione basata su questa stringa può essere la seguente:
function clearSpecial ($stringa) {
return preg_replace("/[^a-zA-Z0-9_-]/", "", $stringa);
}
$stringa = "Pulizia % dei caratteri speciali ò";
echo clearSpecial($stringa); // Risultato : Pulizia dei caratteri speciali