PHP, iconv, ereg_replace e lunghezza massima di una stringa

Nulla di filosofico ma sto lavoricchiando parecchio con PHO e affini ultimamente. Risultato? so di non sapere... a parte frasi platonicamente ovvie, vediamo di fare il punto su una questione: ODIO la funzione iconv. Serve per un po' di cose, in particolare può convertire stringhe in charset differenti, per esempio:
iconv('utf-8', 'us-ascii//TRANSLIT', $stringa);
serve per tradurre la stringa in UTF-8. Nulla di più semplice vero? se non fosse che ho passato un pomeriggio per capire che ha un buffer di 8000 caratteri o poco più... dopo di che taglia la stringa. Ora non ho ben debuggato il problema, ma se vi serve la traduzione di una stringa più lunga vi consiglio senza ombra di dubbio le regular expression: 
ereg_replace("[^[:alnum:] ]","",$stringa);


in particolare questa converte tutto quello che è alfanumerico cancellando il resto, se volete aggiungere delle eccezioni basta modificare in questo modo la parte centrale [^[:alnum:];.:%&-] in questo modo verranno convertiti soltanto i caratteri non inclusi tra la prima coppia di quadre: ^[:alnum:];.:%&-


Non è certo questo il loco ove meglio approfondire il fantastico mondo delle espressioni regolari, altresì dette regex, ma in questo sito potrete trovare un validissimo banco di prova per le vostre stringhe di testo con comoda quida e vari tipologie di personalizzazione.

Commenti

Post popolari in questo blog

Problemi con Sitecom Wireless Network Modem Router Adsl2 + WL-606

Lenovo SL 500 problemi di tastiera

Windows installer enorme!!!