Visualizzazione risultati 1 fino 10 di 10

Discussione: wordwrap() solo per un carattere

  1. #1
    Guest

    Predefinito wordwrap() solo per un carattere

    Ho questo codice che manda a capo una riga, però vorrei aggiungere o modificare in modo che solo un carattere particolare "m" se tenuto premuto continuamente manda a capo dopo 40

    Codice PHP:
    $messaggio = wordwrap($messaggio, 90, "<br/>",1);

  2. #2
    L'avatar di saitfainder
    saitfainder non è connesso Sëniör Stäff
    Data registrazione
    06-12-2002
    Residenza
    Torino
    Messaggi
    8,715

    Predefinito

    Cioé? Vorresti che 40 "m" vengano trasformate in un ritorno a capo? Scusa se te lo chiedo ma... che senso ha?


    «È una mia peculiarità distorcere la verità e inventarne di nuove.»
    «I tuoi orientamenti hanno su di me un effetto prossimo allo zero.»


  3. #3
    Guest

    Predefinito

    Citazione Originalmente inviato da saitfainder Visualizza messaggio
    Cioé? Vorresti che 40 "m" vengano trasformate in un ritorno a capo? Scusa se te lo chiedo ma... che senso ha?
    Vedi qui http://photoman.altervista.org/guestbook/form.php cosi se quallcuno si diverte a sballarmi le celle non potrà più farlo

  4. #4
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Codice PHP:
    $messaggio=str_replace("mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm","<br />",$messaggio);
    P.S.: @ Saitfander: riduci la dimensione della firma.
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  5. #5
    Guest

    Predefinito

    Citazione Originalmente inviato da funcool Visualizza messaggio
    Codice PHP:
    $messaggio=str_replace("mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm","<br />",$messaggio);
    P.S.: @ Saitfander: riduci la dimensione della firma.
    Ho fatto 2 prove, vedi pag, come mai esce così?

  6. #6
    L'avatar di saitfainder
    saitfainder non è connesso Sëniör Stäff
    Data registrazione
    06-12-2002
    Residenza
    Torino
    Messaggi
    8,715

    Predefinito

    Citazione Originalmente inviato da photoman Visualizza messaggio
    Vedi qui http://photoman.altervista.org/guestbook/form.php cosi se qualcuno si diverte a sballarmi le celle non potrà più farlo
    Il tuo codice funziona già benissimo, infatti non ci sono mai più di 90 'm' per riga. L'unica cosa che devi modificare è il massimo numero di caratteri per riga:

    Codice:
    $messaggio = wordwrap($messaggio, 40, "<br />", 1);


    «È una mia peculiarità distorcere la verità e inventarne di nuove.»
    «I tuoi orientamenti hanno su di me un effetto prossimo allo zero.»


  7. #7
    Guest

    Predefinito

    Citazione Originalmente inviato da saitfainder Visualizza messaggio
    Il tuo codice funziona già benissimo, infatti non ci sono mai più di 90 'm' per riga. L'unica cosa che devi modificare è il massimo numero di caratteri per riga:

    Codice:
    $messaggio = wordwrap($messaggio, 40, "<br />", 1);
    Lo so, ma poi la riga diventa troppo corta se scritta normalmente, se possibile vorrei farlo solo con il carattere "m"

  8. #8
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Se vuoi mandare a capo solo quando ci sono 40 "m", cancella la riga con il wordwrap, ma se uno scriverà 80 "n" di fila, non andrà a capo. Secondo me la soluzione migliore è quella di lasciare il wordwrap e basta.
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  9. #9
    L'avatar di saitfainder
    saitfainder non è connesso Sëniör Stäff
    Data registrazione
    06-12-2002
    Residenza
    Torino
    Messaggi
    8,715

    Predefinito

    Ma vuoi proprio sostituire le 'm' o solo inserire un ritorno a capo? E se poi uno ti inserisce delle 'W'?

    Se vuoi proprio sostituire, io farei una cosa più generica:

    Codice PHP:
    $message = preg_replace($message, '/\w{40}/', "<br />");
    Se invece non vuoi sostituire, ma solo aggiungere un ritorno a capo:

    Codice PHP:
    $message = preg_replace($message, '/(\w{40})/', "$1<br />");


    «È una mia peculiarità distorcere la verità e inventarne di nuove.»
    «I tuoi orientamenti hanno su di me un effetto prossimo allo zero.»


  10. #10
    Guest

    Predefinito

    Citazione Originalmente inviato da funcool Visualizza messaggio
    Se vuoi mandare a capo solo quando ci sono 40 "m", cancella la riga con il wordwrap, ma se uno scriverà 80 "n" di fila, non andrà a capo. Secondo me la soluzione migliore è quella di lasciare il wordwrap e basta.
    ...oppure creare un codice del tipo: (if) se c'è più di 40 m consecutive manda a capo a 40, se invece ce ne sono 40 o meno metti tutto a video


    EDIT:
    Citazione Originalmente inviato da saitfainder Visualizza messaggio
    Ma vuoi proprio sostituire le 'm' o solo inserire un ritorno a capo? E se poi uno ti inserisce delle 'W'?

    Se vuoi proprio sostituire, io farei una cosa più generica:

    Codice PHP:
    $message = preg_replace($message, '/\w{40}/', "<br />");
    Se invece non vuoi sostituire, ma solo aggiungere un ritorno a capo:

    Codice PHP:
    $message = preg_replace($message, '/(\w{40})/', "$1<br />");
    Ho provato la seconda ma a video non appare proprio niente
    Ultima modifica di funcool : 29-02-2008 alle ore 11.41.42

Regole di scrittura

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