phpbar.de logo

Mailinglisten-Archive

[php] Klassen und Methoden bzw. sep. Functionen finden per RegEx

[php] Klassen und Methoden bzw. sep. Functionen finden per RegEx

"patrick müller (aka elias)" ghostwwinside at gmx.net
Don Mar 24 15:48:41 CET 2005



Steffen Kother wrote:

> ich habe mal dein Snippet für die ermittlung der Klassen eingebaut und 
> auch mal eine Variante mit 'ner RegEchse gemacht. Beide habe ich durch 
> eine 100er-Schleife gejagt (sowohl PHPEdit als auch Browser), Zeit 
> genommen und leider kommt der Tokenizer
> deutlich schlechter weg...
> 

Erstmal solltest du für dein Benchmark nicht microtime
nicht so benutzen wie du es machst da ein String 
zurückgeliefert wird: 
	http://de2.php.net/microtime

Dann ist deine Klasse etwas komisch und erzeugt schon
overhead, besser wäre es wenn du jede Routine in eine
eigene Methode verpackst.

Ich hab den Token Teil mal umgeschrieben, damit verdoppelt
sich die Performance:

<php>
$max = count($this->Tokens);
$i = 0;
while(++$i < $max)
{
	if($this->Tokens[$i][0] == T_CLASS)
	{
		while($this->Tokens[$i][0] != T_STRING)
			$i++;	
		$this->Classes[] = $this->Tokens[$i][1];
	}
}
</php>

-Deine Version: 0.43065023422241 / 0.016685009002686 = 25.810608442171
-Meine Version: 0.24853014945984 / 0.019524097442627 = 12.729405299792

Aber mir persönlich ging es ja nicht um die Performance, sondern
um die Möglichkeiten die sich ergeben. 

MfG,
elias


php::bar PHP Wiki   -   Listenarchive