Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    semplice funzione per il ridimensionamento delle stringhe

    ammesso che estraggo dei dati da un db, ad esempio i titoli di libri in archivio, voglio visualizzare solo fino ad un massimo di 30 caratteri, non di più altrimenti si sfasa tutto.

    facendo una funzione che devo aggiungere?

    function riduzione_stringa($var)
    {
    if (strlen($var) > '30')
    {
    $var = substr($var, 0, 12);
    return $var;
    } else {
    $var = $var;
    return $var;
    }

    }


    poi chiaramente nel file che devo usare includo il file di questa funzione e faccio ad esempio
    riduzione_stringa($dati[titolo]);

    se nella funzione metto degli echo mi funziona tutto, però nella funzione non vorrei mettere gli echo, vorrei solo che mi venisse definita la variabile e basta, si può fare?
    questa variabile mi deve servire per diversi elementi, non solo per il titolo ma anche per autore, editore ecc., come potrei usarla al meglio?

  2. #2
    se la funzione ti ritornauna stringa la devi scrivere da qualche parte, no?


    $titolo=ridimensiona_stringa($titolo);

    così dovrebbe andare..

    ..IcE..
    visit the BEST italian fotolog http://www.ghiacciato.it/fotolog

    "Solo due cose sono infinite, l'universo e la stupidità dell'essere umano.. ma sulla prima ho ancora delle riserve.." A.Einstein

  3. #3

    Re: semplice funzione per il ridimensionamento delle stringhe

    [supersaibal]Originariamente inviato da bejelit
    $var = $var;
    [/supersaibal]
    Fondamentale questa istruzione, sennò non funziona più nulla

  4. #4

    Re: Re: semplice funzione per il ridimensionamento delle stringhe

    [supersaibal]Originariamente inviato da skidx
    Fondamentale questa istruzione, sennò non funziona più nulla [/supersaibal]
    infatti , comunque andavo di fretta e l'ho scritta in un attimo.

  5. #5
    vedi se questa puo' tornarti utile
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  6. #6
    l'ho rifatta così, adesso la posso utilizzare in ogni circostanza inserendo la grandezza della stringa.

    function riduzione_stringa($var, $num)
    {
    if (strlen($var) > $num)
    {
    $num2 = "$num - 3";
    $var = substr($var, 0, $num2)."...";
    return $var;
    } else {
    return $var;
    }

    }


    per utilizzarla faccio così ad esempio:
    $variabile = riduzione_stringa($variabile, 30);

  7. #7
    scusa ma non ti basta substr ? :master:
    tu hi ricreato la funzione substr, che se non taglia non fa niente ... o no ?


    cmq quella che ti ho postato non spezza le parole, lascia titoli interi e si taglia all' ultima parola scrivibile entro il massimo dei caratteri
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  8. #8
    si in effetti basta substr solo che ad ogni variabile dovrei fare la condizione che se supera 30 caratteri allora me la taglia e mi aggiunge i puntini.

    così faccio
    $variabile = riduzione_stringa($variabile, $numero);
    e fa tutto lui.

  9. #9
    c'era un errore, non avevo messo le parentesi

    function riduzione_stringa($var, $num)
    {
    if (strlen($var) > $num)
    {
    $num2 = ($num - 3); //c'era un errore qui
    $var = substr($var, 0, $num2)."...";
    return $var;
    } else {
    return $var;
    }

    }

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.