Very short snippet: PHP word cut

Delimita una porzione di testo per il numero di “parole”:

1
2
3
4
5
6
7
8
9
10
11
/**
 * String word cut
 *
 * @private
 */

function wordCut($c, $l){
    $c= explode(' ',$c);
    for($i=0; $i<$l; $i++) $r[$i] = $c[$i];
    $r= implode(' ', $r).'...';
    return $r;
}

9 commenti a: “Very short snippet: PHP word cut”

  1. 21 set, 2008 Tom:

    Dai 2 righe per un esempiuccio potevate farle. :)

  2. 21 set, 2008 Napolux:

    La mia tagliaStringa($stringa,$numParole) è un po’ diversa… Non uso due array, ma costruisco la stringa inserendo le parole man mano in una variabile, tagliando poi l’ultimo spazio e aggiungendo i tre puntini…

    Che dici?

  3. 22 set, 2008 Giulio:

    Grazie! Carpita e usata…

  4. 22 set, 2008 Giovambattista Fazioli:

    @Tom: oddio, un esempio per una funzione “taglia stringhe” è un po’ eccessivo… :) Tuttavia, ad esempio, la puoi usare per:

    1
    $res = wordCut( 'Stringa di esempio abbastanza lunga per essere tagliata', 5 );

    Otterai in $res:

    Stringa di esempio abbastanza lunga...
  5. 22 set, 2008 Giovambattista Fazioli:

    @Napolux: ho cercato invano la tua funzione sul tuo blog… cmq anche così andrebbe bene:

    1
    2
    3
    4
    5
    function wordCut($c, $l){
        $c = explode(' ',$c);
        for($i=0; $i<$l; $i++) $r[$i] = ($i==0)?$c[$i]:(' '.$c[$i]);
        return ($r.'...');
    }

    Nota la “chicca” per non preoccuparsi di eliminare lo spazio in più :)

  6. 22 set, 2008 Giovambattista Fazioli:

    @Giulio: prego caro! Anche se nessuno si è accorto che per grandi stringhe la funzione corretta sarebbe:

    1
    2
    3
    4
    5
    6
    7
    8
    function wordCut($c, $l){
        $a= explode(' ',$c);
        if( count($a) > $l) {
            for($i=0; $i<$l; $i++) $r[$i] = $a[$i];
            $r= implode(' ', $r).'...';
            return $r;
        } else return $c;
    }

    :P

  7. 13 set, 2009 Undolog.com» Very short snippet: PHP, tagliare a parole, contanto i caratteri:

    [...] già visto in Very short snippet: PHP word cut è più gradevole spezzare un testo a "parole", in quanto si evita di tagliare una parola. C'è [...]

Lascia un commento

TAG XHTML PERMESSI: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> INSERIMENTO CODICE:
<pre></pre> // blocco generico
					<code></code> // blocco generico
					[cc_actionscript][/cc_actionscript] // Actionscript
					[cc_actionscript3][/cc_actionscript3] // Actionscript 3
					[cc_css][/cc_css] // CSS Style Sheet
					[cc_html][/cc_html] // HTML
					[cc_js][/cc_js] // Javascript
					[cc_objc][/cc_objc] // Objective-C
					[cc_php][/cc_objc] // PHP
					[cc_sql][/cc_sql] // SQL


Stop SOPA