Tu peux récupérer dans un tableau tes valeurs avec un preg_match($pattern,$subject,$array) et ensuite tu les passes dans ta méthode
Bonjour à tous
J'aimerais récupérer la valeur d'une expression régulière [0-9]+ et la passer à ma méthode $diapo->simple_diaporama(5) :
$page'contenu'] = preg_replace("/[diaporama_[0-9]+]/", $diapo->simple_diaporama(5), $page'contenu']);
merci de votre aide
4 réponses
Gregory,
il y a 14 ans
bagui,
il y a 14 ans
Alors voila ce que j'ai fait et ca marche bien, sauf que dans un texte qui provient d'une table je peux avoir plusieurs tags comme ceci, alors comment faire :
un exemple de texte {diaporama_1} et puis encore du texte {video_45} et enfin du texte.
preg_match("/[0-9]+/", $page'contenu'], $matches);
$page'contenu'] = preg_replace("/{diaporama_([0-9]+)}/", $diapo->simple_diaporama($matches[0]), $page'contenu']);
Gregory,
il y a 14 ans
si tu as plusieurs valeurs il faut utiliser preg_match_all :)
bagui,
il y a 14 ans
Bonjour et merci pour les réponses :
Voila comment je vais procéder et ca marche impec !
preg_match("/{diaporama_([a-z]+)_([0-9]+)}/", $page'contenu'], $matches);
// $matches[1] = type de diaporama
// $matches[2] = id du diaporama dans la db
$page'contenu'] = preg_replace("/{diaporama_([a-z]+)_([0-9]+)}/", $diapo->simple_diaporama($matches[1],$matches[2]), $page'contenu']);