PHP: convertire i caratteri accentati

Direttamente da alcuni progetti di sviluppo su cui mi è capitato di lavorare di recente.
Mi sono trovato a dovere gestire dei dati in cui dovevo prevedere la presenza di caratteri accentati e la possibilità di effettuare ricerche su di questi non sapendo se l’utente avrebbe inserito correttamente la scritta.

segni-diacritici
Ho quindi deciso di convertire tutta una serie di caratteri in quello che si può considerare il loro equivalente senza il segno diacritico.
Ho pertanto creato una semplice funzione in PHP che metto qui a disposizione di chi ne avesse bisogno.

function accented_char_transform($input)
{
$search = explode(“,”,”ç,æ,œ,á,é,í,ó,ú,à,è,ì,ò,ù,ä,ë,ï,ö,ü,ÿ,â,ê,î,ô,û,å,e,i,ø,u”);
$replace = explode(“,”,”c,ae,oe,a,e,i,o,u,a,e,i,o,u,a,e,i,o,u,y,a,e,i,o,u,a,e,i,o,u”);
$output = str_replace($search, $replace, $input);
return $output;
}

 

Lascia il tuo commento