Page 1 sur 1

Balise code dans BBCode

Posté : 16 juil. 2010, 02:49
par Valentin45000
:D Bonjour tous le monde,
Voilà j'ai finalement tout refait mon site avec du BBCode, je trouve cela plus simple et je passe pour l'éditeur par Markitup pour seux qui connaisse.
Mais mon problème n'as pas réellement changer :mrgreen:
En fait je chercher à faire pilpoil comme ici, c'est pouvoir colorer du code, par exemple ici avec les balises

Code : Tout sélectionner

[php][/php]
Je ne sais pas trop comment mettre en place. Sinon je connait Geshi et Syntaxhighlighter (de google) si possible j'aimerais passer par Geshi qui est plus souple.
Pour faire simple j'aimerais que vous me guider sur le code à placer pour détecter les balise
(bon ça c'est juste du regex, c'est vite fait et je sais le faire ^^), mais surtout après comment appliquer la coloration.

Merci d'avance.
Amicalement.

Re: Balise code dans BBCode

Posté : 16 juil. 2010, 09:20
par Ultim4T0m
Salut,

Fonction trouvée dans la doc (dans les commentaires de highlight_string() plus précisement).
<?php

$str = "[php]<?php
echo 'test';
?>
";

echo bb_php($str);

function bb_php($str){
$str = str_replace("]\n", "]", $str);
$match = array('#\[php\](.*?)\[\/php\]#se');
$replace = array("'<div>'.highlight_string(stripslashes('$1'), true).'</div>'");
return preg_replace($match, $replace, $str);
}
?>[/php]

Affichera
<?php
echo 'test';
?>

Re: Balise code dans BBCode

Posté : 16 juil. 2010, 14:21
par Valentin45000
Merci beaucoup :mrgreen:
Mais finalement j'ai aussi réussi à faire quelque chose avec geshi en suivant se tuto :
http://www.tutoriels-video.fr/creer-un- ... -et-geshi/