Codice PHP:
/*
FUNZIONE: Tagliaparole
PARAMETRI:
- $txt => la stringa da tagliere
- $len => lunghezza massima della stringa superata al quale si progede al taglio
- $add => stringa da apporre successiva al taglio
*/
function tagliaparole($txt, $len, $add)
{
//Elimino eventuali tag HTML
$txt = strip_tags($txt);
// se la lunghezza è inferiore a quella massima (indicata come secondo parametro)
// restituisce la stringa priva di tag
if (strlen($txt) <= $len) return $txt;
// ALTRIMENTI: applica la funzione wordwrap
/*
PARAMETRI DELLA FUNZIONE WORDWRAP:
1) la stringa da tagliare a spezzoni
2) lunghezza di ogni spezzone
3) carattere da anteporre fra ogni spezzone
4) l'ultimo parametro può assumere valori 0/1 o TRUE/FALSE
e serve ad indicare se devono essere o meno troncate anche le parole
così come applicata in questo caso avrai una stringa i cui spezzoni sono
separati dal carattere | il quale ha tagliato anche le parole
*/
$nuovo = wordwrap($txt, $len, "|",1);
/*
EXPLODE: trasforma una stringa in un array.
Essa riceve due parametri obbligatori:
il primo è una stringa e
il secondo è i o il carattere separatore.
Essa darà come return un array contenente
i singoli elementi della stringa.
*/
$nuovotesto=explode("|",$nuovo);
/*
Prende il primo elemento dell'array ottenuto con explode
ovvero il primo spezzone della funzione wordwrap
e gli aggiunge l'ultimo parametro passato nella funzione
*/
return $nuovotesto[0].$add;
/*
CONCLUSIONE:
pessima funzione...
sarebbe bastato substring() e in pochi
passaggi si sarebbe ottenuto
il medesimo risultato
*/
}