Je voudrais coloriser du code contenu entre les balises php et franchement je n'arrive pas a voir mon erreur !!

voila mon exemple, j'arrive a capturer la portion de code, a la coloriser, mais je n'arrive pas a la replacer dans la chaine d'origine.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
 
  $chaine = '
  Bonjour,
  <br />
  &lt;?php echo "hello world"; ?>
  &nbsp;
  bye ';
 
 
  if (preg_match('/&lt;\?php(.*?)\?>/si' , $chaine, $capture))
  echo preg_replace('/&lt;\?php(.*?)\?>/si',highlight_string(html_entity_decode($capture[0])),$chaine);
 
?>
ca n'affiche pas au bon endroit, le code php est colorisé mais il n'est pas a bon endroit

<?php echo "hello world"; ?> Bonjour,
1 bye