| Modificare una stringa ad una certa lunghezza senza troncare le parole |
|
|
|
|
Spesso troviamo blog dove in alcune pagine vediamo listati gli ultimi articoli a volte troncati ad un certo numero di caratteri con il poi classico "Continua..." In questo tutorial vedremo come stroncare quindi una stringa ad un certo numero di caratteri senza stroncare le parole e vedremo anche come aggiungere un banner ad una certa lunghezza di caratteri subito dopo.... il punto ( . ). Passiamo subito al codice come prima cosa creiamo una funzione e la nominiamo Tagliatesto(): >?php function Taglitesto($stringa, $max_char){ $lunghezza = strlen($stringa); if($lunghezza>$max_char){ $stringa_tagliata=substr($stringa, 0,$max_char); $last_space=strrpos($stringa_tagliata,"."); $stringa_ok=substr($stringa_tagliata, 0,$last_space+1); return $stringa_ok."..."; }else{ return $stringa; } } echo Tagliatesto($testo,'200'); ?< Quesot esempio troncherà la stringa $testo dopo circa 200 caratteri, perchè circa? semplice, se l'ultima parola finisce al 198° carattere e finisce al 201° tipo, la stringa verrà troncata al 197° carattere che sarà uno spazio vuoto. Se invece vogliamo inserire un testo (o un banner) dopo tot caratteri senza trocanre le parole e dopo un punto ecco come fare >?php function Taglitesto($stringa, $max_char){ $banner = 'codice'; $lunghezza = strlen($stringa); if($lunghezza>$max_char){ $stringa_tagliata=substr($stringa, 0,$max_char); $last_space=strrpos($stringa_tagliata,"."); $stringa_ok=substr($stringa_tagliata, 0,$last_space+1); return $stringa_ok."".$banner." ".substr($stringa,$last_space+1,$lunghezza); }else{ return $stringa; } } echo Tagliatesto($testo,'200'); ?< Questo esempio stamperà il banner dopo il primo punto più vicino al 200° carattere. A voi la palla per modificare questi script nel modo che più vi interesa! |
| Pros. > |
|---|
