Bonjour tout le monde

En ce moment, j'ai un problème avec des regex, et je ne comprend vraiment pas le problèmes

Donc voila mon problème, je fais des test sur les regex multilignes, d'après ce que j'ai trouvé c'est l'option m à rajouter.
J'ai donc fait des test plutot concluant, genre ça :
$chaine = "T
est testo";
preg_match("!Test!smiU",$chaine,$result);
Là je n'ai de problème, je trouve le bon résultat
Mais si par exemple je fais ça :
$chaine = "{if:vrai}{C'est vrai}{/if}
{else}{C'est faux ;)}{/else} toto est là";
preg_match_all("!{if:(.*?)}{(.*?)}{/if}{else}{(.*?)}{/else}!smiU",$chaine,$result);
Mais voila, maintenant celle-ci ne marche pas quand c'est sur plusieurs lignes
Alors que si je met tout sur une seule et même ligne tout marche très bien

Donc là je comprend pas pourquoi là ça ne fait pas le multilignes
Merci d'avances et bonne vacances
