Remplacer bbcode par balises html PHP

stanac Messages postés 62 Statut Membre -  
 Utilisateur anonyme -
Bonjour,

Voilà la base du problème :

<?php
// définition de la variable contenant les paragraphes en BBcode
$texte = '[p]Ce texte est un 1er paragraphe!/p[p]Ce texte est un 2ème paragraphe!/p';

// remplacer le BBcode par du code HTML
$texte = preg_replace("#^(?:\[p\]{1})([A-Za-z0-9éèàçêîôûâëïöüäù!?,.;:/\" '()-]+)(?:\/p\{1})$#isU", '<p>$1</p>', $texte); 

echo $texte;


$texte affiche :

[p]Ce texte est un 1er paragraphe!/p[p]Ce texte est un 2ème paragraphe!/p

Mais quand il n'y a qu'un seul paragraphe ça marche bien. Je suppose qu'il faut faire une boucle ou un explode quelque part...

Comment puis-je faire pour que les ensembles [p]/p soient remplacés un par un quand ma variable contient plusieurs occurrences ?

Merci !
A voir également:

1 réponse

Utilisateur anonyme
 
Sa te convient ?:
function bbcode($texte)  
 {  
  $texte = str_replace('[p]', '<p>', $texte);  
  $texte = str_replace('[ / p ]', '</p>', $texte);   //sans les espaces
  return $texte;  
 }  
(J'ai pas vraiment compris ^_^")
0