Gli underscore possono essere aggiunti ad una stringa contenente spazi o apici come le virgolette per vari motivi, le url sono il caso più classico, grazie agli uderscore si evita infatti che il browser produca in output non voluti nella barra degli indirizzi caratteri o addiritittura che la pagina desiderata risulti irraggiungibile.
La funzione che presentiamo in questo articolo consente di individuare spazi vuoti e apici all'interno di una stringa e di sostituirli con gli opportuni underscore.
Il suo funzionamento si basa sull'azione della funzione preg_replace() e delle espressioni regolari: questa funzione nativa permette accetta infatti tre parametri: la porzione di stringa da cercare e sostituire, la porzione sostitutiva e la stringa in cui deve essere operata la sostituzione.
Troviamo poi la funzione trim() per l'eliminazione degli spazi (a cui viene indicato il carattere sostitutivo underscore) e strtolower() che restituisce una stringa in formato lowercase, cioè interamente in minuscolo.
<? function underScore($stringa) { $stringa = preg_replace('/[\'"]/', '', $stringa); $stringa = preg_replace('/[^a-zA-Z0-9]+/', '_', $stringa); $stringa = trim($stringa, '_'); $stringa = strtolower($stringa); return $stringa; } echo underScore("Claudio Eliox Garau"); ?>