preg_replace_callback liefert Daten falsch zurück

n’abend alle,
ich habe Leider immernoch das Problem das die PHP Funktion preg_replace_callback() die ersetzen Inhalt als erstes Ausgibt und nicht an die richtige Stelle setzt. Ich weiß einfach nicht wie man das ändern kann und währe sehr Dankbar wenn ihr mir helfen könntet.

Das ist der PHP Code:
[php]
function geshi($treffer)
{
return geshi_highlight($treffer[2], $treffer[1], „“);
}
echo preg_replace_callback(„~[(php|html|css|sql)](.+)[/\1]~s“, „geshi“, $ein_tutorial);
[/php]MfG xXxPeterPanxXx

Ich denke nicht, dass es an preg_replace_callback liegt. Du solltest dir vielmehr die Funtion geshi_highlight() anschauen!

Bist du auch sicher, dass du der Funktion die richtigen Werte übergibst?