Vi è mai capitato di trattare alcune stringhe in PHP per dover calcolare la lunghezza di una frase e magari tagliarla dopo N caratteri?
E vi è capitato di fare queste operazioni con stringhe UTF-8 ?
In quest’ultimo caso, utilizzando le normali funzioni php substr o strlen, potrebbero capitare delle sorprese.
Ad esempio se il taglio della stringa avviene su un carattere accentato visualizzerete probabilmente un carattere incomprensibile!
provate ad eseguire questo codice:
echo substr(”Il lavoro più bello del mondo”,0,13);
E adesso provate invece ad eseguire questo:
echo mb_substr(”Il lavoro più bello del mondo”,0,13,’utf-8′);
Non è forse meglio???
N.B: idem per il calcolo di lunghezza di una stringa: usate mb_strlen e NON strlen!
