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

    Funzione php che formatta codice BBcode

    Weilą...
    ragazzi mi serve un'aiuto...

    Allora sto usando una funzione php che formatta codice BBcode del tipo:

    function bbcode_format($var) {
    $search = array(
    ’/\[b\](.*?)\[\/b\]/is’,
    ’/\[i\](.*?)\[\/i\]/is’,
    ’/\[u\](.*?)\[\/u\]/is’,
    ’/\[img\](.*?)\[\/img\]/is’,
    ’/\[url\](.*?)\[\/url\]/is’,
    );
    $replace = array(
    $1’,
    $1’,
    ’<u>$1</u>’,
    ’[img]$1[/img]’,
    $1’,
    );
    $var = preg_replace ($search, $replace, $var);
    return $var;
    }

    Ora ammettendo che da un input si riceva un messaggio che verrą formattato in bbcode, e ammettendo che qualcuno scriva [ b ][ /b ], si ha come risultato ...

    Come posso fare in modo che la sostituzione del [ b ][ /b ] e di qualsiasi altro codice avvenga solo nel momento in cui venga scritto qualcosa tra i 2 parametri:
    faccio un esempio [ b ]ciao[ /b ] diventa ciao
    Mentre se scrivo [ b ][ /b ] non cambia nulla e diventa [ b ][ /b ], perchč non ho scritto nulla tra i due codici...

  2. #2
    Devi modificare il REGEX da (.*?) a (.+), in questo modo convertitą il tag solo se trova almeno un carattere

  3. #3
    ora provo grazie...

  4. #4
    Originariamente inviato da mem
    Devi modificare il REGEX da (.*?) a (.+), in questo modo convertitą il tag solo se trova almeno un carattere
    Funge ... grazie

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.