TRANSFORMER DU PBB CODE EN CODE HTML

Signaler
Messages postés
291
Date d'inscription
vendredi 21 février 2003
Statut
Membre
Dernière intervention
13 mars 2015
-
Messages postés
14
Date d'inscription
mercredi 27 octobre 2010
Statut
Membre
Dernière intervention
27 mai 2013
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/53083-transformer-du-pbb-code-en-code-html

Messages postés
14
Date d'inscription
mercredi 27 octobre 2010
Statut
Membre
Dernière intervention
27 mai 2013

correction :

public static function bbcode2html($text){
$text = preg_replace('!\[quote\](.+)\/quote\!isU', '
Citation :
$1
', $text);
$text = preg_replace("!\[quote\=(.+)\](.+)\[\/quote\]!isU", "
$1 :
$2
", $text);
$text = preg_replace('!\[b\](.+)\/b\!isU', '$1', $text);
$text = preg_replace('!\[i\](.+)\/i\!isU', '$1', $text);
$text = preg_replace('!\[u\](.+)\/u\!isU', '$1', $text);
//$text = preg_replace('!\[center\](.+)\/center\!isU', '$1

', $text);
//$text = preg_replace('!\[right\](.+)\/right\!isU', '$1

', $text);
//$text = preg_replace('!\[left\](.+)\/left\!isU', '$1

', $text);
//$text = preg_replace('!\[titre\](.+)\/titre\!isU', '$1
',$text);
//$text = preg_replace('!\[email\](.+)\/email\!isU', '["mailto:$1">$1',$text);
//$text = preg_replace('!\[img\](.+)\/img\!isU', '',$text);
$text = preg_replace('!\[url\](.+)\/url\!isU', '$1',$text);
$text = preg_replace("!\[url=([^\]]+)\](.+)\/url\!Ui","$2",$text);
$text = preg_replace("!\[color=([^\]]+)\](.+)\[\/color\]!mi","$2",$text);
$text = preg_replace("!\[list\](.+)\/list\!isU","
$1
",$text);
//$text = preg_replace("!\[list=([^\]]+)\](.+)\/list\!isU","
$2
",$text);
$text = preg_replace("!\[\*\](.+)(?=(\[\*\]|
))!isU"," * $1
",$text);
$text = preg_replace('!\[code\](.+)\/code\!isU', '$1

', $text);
return(nl2br($text));
}
Messages postés
14
Date d'inscription
mercredi 27 octobre 2010
Statut
Membre
Dernière intervention
27 mai 2013

Voilà la méthode que j'utilise (pour info je crois qu'on appel ça du bbCode et non du pbb)
j'ai mis en commentaires les tags que je n'utilise pas sur mon site (parce que ça doit être assez gourmand l'accumulation de preg_replace)

class StringHelper{

[...]

public static function bbcode2html($text){
$text = preg_replace('!\[quote\](.+)\/quote\!isU', '
Citation :
$1
', $text);
$text = preg_replace("!\[quote\=(.+)\](.+)\[\/quote\]!isU", "
$1 :
$2
", $text);
$text = preg_replace('!\[b\](.+)\/b\!isU', '$1', $text);
$text = preg_replace('!\[i\](.+)\/i\!isU', '$1', $text);
$text = preg_replace('!\[u\](.+)\/u\!isU', '$1', $text);
//$text = preg_replace('!\[center\](.+)\/center\!isU', '$1

', $text);
//$text = preg_replace('!\[right\](.+)\/right\!isU', '$1

', $text);
//$text = preg_replace('!\[left\](.+)\/left\!isU', '$1

', $text);
//$text = preg_replace('!\[titre\](.+)\/titre\!isU', '$1
',$text);
//$text = preg_replace('!\[email\](.+)\/email\!isU', '["mailto:$1">$1',$text);
//$text = preg_replace('!\[img\](.+)\/img\!isU', '',$text);
$text = preg_replace('!\[url\](.+)\/url\!isU', '$1',$text);
$text = preg_replace("!\[url=([^\]]+)\](.+)\/url\!Ui","",$text);
//$text = str_replace ( '/size' , '' , $text );
$text = preg_replace("!\[color=([^\]]+)\](.+)\[\/color\]!mi","$2",$text);
//$text = str_replace ( '/color' , '</color>' , $text );
$text = preg_replace("!\[list\](.+)\/list\!isU","
$1
",$text);
//$text = preg_replace("!\[list=([^\]]+)\](.+)\/list\!isU","
$2
",$text);
$text = preg_replace("!\[\*\](.+)(?=(\[\*\]|
))!isU"," * $1
",$text);
//$text = str_replace('
', '', $text);
//$text = str_replace('
', '

', $text);
return(nl2br($text));
}
}
Messages postés
291
Date d'inscription
vendredi 21 février 2003
Statut
Membre
Dernière intervention
13 mars 2015

Merci pour l'explication
JJDAI
Messages postés
9
Date d'inscription
vendredi 31 octobre 2008
Statut
Membre
Dernière intervention
28 avril 2011

je vais voire je promet rien.
Afficher les 7 commentaires