Bonsoir,
Les balises dont tu parle, porte le nom de BBCode.
Il existe plusieurs sources sur phpcs, traitant d'elles, mais evidament si tu ne connais pas le nom, tu risque de les trouvés dans un packer de temps...
Donc pour toi j'ai selectioner un module bbcode, qui ma apparut être le plus interessent :
<?
function bbcode($text) {
$text = preg_replace("#\[img\]((ht|f)tp://)([^\r\n\t<"]*?)\/img\#sie", "''", $text);
$text = preg_replace("#\[url\]((ht|f)tp://)([^\r\n\t<"]*?)\/url\#sie", "'\\1\\3'", $text);
$text = preg_replace("/\[url=(.+?)\](.+?)\[\/url\]/", "$2", $text);
$text = preg_replace("/\[b\](.+?)\[\/b\]/", " $1 ", $text);
$text = preg_replace("/\[i\](.+?)\[\/i\]/", " $1 ", $text);
$text = preg_replace("/\[u\](.+?)\[\/u\]/", "$1", $text);
$text = preg_replace("/\[code\](.+?)\[\/code\]/", " Code : |----
<code>$1
", $text);
$text = preg_replace("/\[quote\](.+?)\[\/quote\]/", "<table width= 100%>----
citation : |----, $1</td>
", $text);
$text = preg_replace("/\[quote= (.+?)\](.+?)\[\/quote\]/", " $1 : |----
$2
", $text);
$text = preg_replace("/\[color=(.+?)\](.+?)\[\/color\]/", "$2", $text);
return $text;
}
// tu fait rentrer ton formatage de donnée, ce cette façon :
$umessage = $_POST["message"]; // 'message' étant probablement une textarea, issu du formulaire precedent
$umessage = str_replace("<","<","$umessage");
$umessage = str_replace(">",">","$umessage"); // je prefere utiliser ce genre de formatage basique, pour virer les balises < & >, d'autres veront ceci comme incoerent, mais je sais pourqoui je sais ça.
$umessageformater = bbcode($umessage);
// $umessageformater contien du html!
....
?>
</td></tr></table>
Le mieu étant de faire le formatage lors de l'affichage, mais tu sera contrain à plus de ralentisement!
Le plus rapide est de le faire comme dans cette exemple, le faire lorsqu'on fait une réponse à un sujet!
http://www.phpcs.com/code.aspx?ID=17638
Merci à BlackWizzard pour cette source!
++