TheOneAndOnly: ich glaube ich habs allerdings ne Frage wegen der Ausgabe

Beitrag lesen

Ja ich weiss ich möchte es trotzdem probieren ob ich so ne Art Obfuscator hin bekomme. Ich habs auch soweit am laufen aber jetzt steh ich vor dem Problem, dass ich $this aus dem regex irgendwie ausschliesen muss, wie kann ich das machen? kann ich irgendwie sagen das $this bzw this nicht vorkommen darf??
im preg_match ginge das wahrscheinlich so: "#[$]{1}[this]{0}...., oder???

hier mal den testcode den ich bis jetzt zusammen habe:

<?php  
#Öffne Die Datei, die geparst werden soll  
$fi = fopen("database.php", "r");  
$fo = fopen("database2.php", "w");  
$search = array();  
$replace = array();  
$counter = 0;  
#Durchlaufe mit einer Schleife jede Zeile  
while(!feof($fi))  
{  
    //Hole die beiden Strings für Variable und Wert  
	$input = fgets($fi, 1024);  
	  
	//nach funktion matchen  
	preg_match("#function ([A-Za-z0-9]+[a-zA-Z_0-9]*)#", $input, $find);  
    $search[$counter]["forc"]=  $find[1];	// funktionsnamen in array speichern  
	$replace[$counter]["forc"]= md5($find[1]); // funktionsnamen encryptet speichern  
    //Setze den Zeilen-Zähler hoch  
    $counter++;  
	  
	//nach class matchen  
	preg_match("#class ([A-Za-z0-9]+[a-zA-Z_0-9]*)#", $input, $find);  
    $search[$counter]["forc"]=  $find[1];	// classenamen in array speichern  
	$replace[$counter]["forc"]= md5($find[1]); // classennamen encryptet speichern  
	  
    //Setze den Zeilen-Zähler hoch  
    $counter++;  
	  
	// funktionsnamen ersetzen  
	$input = preg_replace("#function ([A-Za-z0-9]+[a-zA-Z_0-9]*)#", "function ".(md5("\\1")), $input);  
	// klassennamen ersetzen  
	$input = preg_replace("#class ([A-Za-z0-9]+[a-zA-Z_0-9]*)#", "class ".(md5("\\1")), $input);  
	// variablennamen ersetzen  
	$input = preg_replace("#[\$]{1}([A-Za-z0-9]+[a-zA-Z_0-9]*)#", "$".md5("\\1"), $input);	  
	//bezeichner aus array ersetzen  
	$input = preg_replace($search, $replace, $input);  
	  
	fputs($fo, $input);  
	//echo $input."<br>";  
}  
//echo "<pre>";  
//var_dump($array);  
?>