MrSnoot: Datei einlesen und ausgeben, aber PHP-Code verarbeiten

Beitrag lesen

Hi,

ich binde eine PHP-Datei (#1) in eine andere (#2) ein, das ganze geschieht via file_get_contents();. In (#1) befindet sich PHP-Code, der auch verarbeitet werden soll, durch diese Einleseprozedur wird der PHP-Code dann aber einfach auf der Seite im HTML-Quelltext mit ausgegeben. Auf php.net habe ich gesehen, dass es dafür wohl Funktionen gibt (ob_start), mit denen man das Problem lösen kann, allerdings schaffe ich es nicht, dass in mein Script einzuarbeiten (vielleicht ist's auch der falsche Ansatz). Mein Script sieht so aus:

<?php  
  
  $bereich = $_GET['bereich'];  
  $datei = "$bereich/themen/$thema.php";  
  $einlesen = file_get_contents($datei);  
  
  ###  
  ##Abfrage ob Suchbegriff eingegeben wurde  
  if(isset($_GET['suchbegriff']))  
  {  
    $highlight = htmlentities($_GET['suchbegriff']);  
    $highlight = preg_replace('[\-]',' ', $highlight);  
  
    ###  
    ##Funktion um mehrere Suchbegriff zu trennen  
  
    function WortMarkieren($einlesen, $highlight)  
    {  
      if(substr($_GET['suchbegriff'],0,1) == "\"" && substr($_GET['suchbegriff'],-1,1) == "\"") ## Prüfen ob Suchbegriff von "..." eingeschlossen ist  
      {  
        $search_str = str_replace("&quot;","",$highlight);  
        ###  
        ##RegExp um Suchbegriffe nur außerhalb von HTML-Tags zu ersetzen (http://www.php-faq.de/q/q-regexp-ersetzen.html)  
        $einlesen = preg_replace("/((<[^>]*)|$search_str)/ie", '"\2"=="\1"? "\1":"<span class=\"suchbegriff\">\1</span>"', $einlesen);  
      }  
      else  
      {  
        $highlight = split(" ",$highlight); ##Mehrere Suchbegriffe ohne "" einzeln verarbeiten  
  
        foreach($highlight as $search_str)  
        {  
  
        ###  
        ##RegExp um Suchbegriffe nur außerhalb von HTML-Tags zu ersetzen (http://www.php-faq.de/q/q-regexp-ersetzen.html)  
        $einlesen = preg_replace("/((<[^>]*)|$search_str)/ie", '"\2"=="\1"? "\1":"<span class=\"suchbegriff\">\1</span>"', $einlesen);  
        }  
      }  
    return $einlesen;  
    }  
    echo WortMarkieren($einlesen,$highlight);  
  }  
  else  
  {  
    echo $einlesen;  
  }  
  
?>

Gibt's ne Möglichkeit, das zu realisieren?