Visualizzazione risultati 1 fino 9 di 9

Discussione: Sostituzione allìinterno di una stringa

  1. #1
    Guest

    Predefinito

    ciao a tutti!
    sto cercando di capirci qualcosa di PHP, ma ho qualche problemino....

    per esempoi.. mi servirebbe una funzione che mi sostituisca all'interno di una stringa il caratterre "a capo" (che l'utente inserisce con l'invio) con un <br>.
    qualcuno sa darmi una mano?

    grazie

  2. #2
    L'avatar di gve
    gve
    gve non è connesso Utente storico
    Data registrazione
    26-01-2003
    Residenza
    Brescia
    Messaggi
    2,964

    Predefinito

    Esiste una fuzione apposita: nl2br($stringa); ti restituisce una stringa che puoi stampare,ad esempio con echo, o assegnare a una variabile in cui tutti gli a capo in $stringa sono sostituiti con <br>.
    | Regolamento del Forum | Regolamento di AlterVista | FAQ di AlterVista | Netiquette |

    GVE = GVE Virtual Extension
    AVCM #: 6637

  3. #3
    Guest

    Predefinito

    Grazie Mille!!!!!!! era proprio quello che cercavo...

    ho solo un'altra piccola domandina.. (scusa se neapprofitto...)
    sto usando la funzone serialize() e unserialize() per scrivere su un file di testo, ma sembra che nl2br mimandi lo stesso a capo, sballandomi l'unserialize().
    mmmm.....
    C'e un modo per evitarlo?

    Grazie ancora!!!!

  4. #4
    Guest

    Predefinito

    invece di nl2br che aggiunge solo <br> quando trova il carattere di ritorno carrelo, utilizza la funzione preg_replace, per sostituirlo...

    nell'esempio, saranno sostituiti i caratteri LF e CR oppure solo CR oppure solo LF con la stringa "<BR>" in $string:

    $stringa = preg_replace("/(\r\n|\n|\r)/", "<br>", $string);



  5. #5
    Guest

    Predefinito

    Fantastico!! Funziona perfettamente!!!!
    Ma che differenza c'e' tra preg-replace() e str_replace, che ho trovato in qualche help....
    miiiiii c'e' da perdersi.....
    grazieeeeeeeeeeeeeee

  6. #6
    L'avatar di gve
    gve
    gve non è connesso Utente storico
    Data registrazione
    26-01-2003
    Residenza
    Brescia
    Messaggi
    2,964

    Predefinito

    Le due funzioni sono simili, ma preg_replace (e erg_replace, simile con qualche differenza) usa le espressioni regolari, che permettono maggior potenza nella selezione di ciò che si vuol sostituire ma sono, ovviamente, più lente.

    Se ti interessa l'argomento, cercando con google Regular Expression dovresti trovare qualche tutorial, e magari anche la differenza tra quelle compatibili Posix (ereg_) e Perl (preg_) che al momento non ti so dire perchè non mi sono mai documentato bene (le ho usate poco finora).
    | Regolamento del Forum | Regolamento di AlterVista | FAQ di AlterVista | Netiquette |

    GVE = GVE Virtual Extension
    AVCM #: 6637

  7. #7
    Guest

    Predefinito

    prego, figurati.... la differenza tra le due funzioni è questa,

    str_replace, sostituisce una stringa con un'altra, all'interno della stringa originale...

    preg_replace, sostituisce la stringa che corrisponde alle espressioni regolari con un'altra, all'interno della stringa originale.

  8. #8
    Guest

    Predefinito

    Grazie ragazzi!
    Mi avete dato un aiuto molto prezioso!!!!

    :D

    Mi sa che vi rompero' ancora con i miei 1000 dubbi!!!

    alla prox
    Crirock

  9. #9
    Guest

    Predefinito

    heheh, figurati, rompi tranquillamente

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •