ich sitzte gerade an einer größeres Softwarelösung. Das ganze Arbeitet sehr viel mit Reflection.
Das nur zur Vorgeschichte.
Jetzt bin ich an einem Punkt angekommen, an dem ich einige Dinge optimieren muss, um die Datenbankabfragenanzahl gering zu halten.
Dafür muss ich natürlich irgendwas schlaues basteln bzw. Daten cachen etc.
Die Frage(n):
Was ist effektiver:
a)
PHP-Code:
$myCache[$propName][$rowId] = $myHelper->HoleMirDasLabel(...);
//hier wird also evt. ein Eintrag überbraten und $myHelper->HoleMirLabel(...) unötigerweise ausgeführt
Vorher array_search_key oder ähnliches in einer If-Abfrage. Wenns den Key schon gibt, keine Ausführung des "HoleMirLabel".
Der Key wäre hier $rowId und $propName wäre an der stelle des Codes schon bekannt.
Sprich ich müsste im array $myCache[$propName] nach dem Key $rowId suchen...
Die Funktion "HoleMirLabel" behinhaltet lediglich etwa sowas:
PHP-Code:
class MyClass{
public $Name
public $Kundennummer
public HoleMirLabel()
{
return $this->Name." (".$this->Kundennummer.")";
}
}
Oder kennt jemand gute Testmethoden außer "echo microtime();"
Naja also generell wäre es gut wenn mir einer sagen kann ob die array funktionen von php zuverlässig und schnell arbeiten. So eine Suche könnte bis zu 100 Einträge beinhalten, in den aber jeweils nur nach dem Key gesucht wird.
Bei zb SQL macht es ja kaum unterschied, ob ich in 200.000 Einträgen nach einem Index suche oder in 10... also jedenfalls hab ich da fürs Menschenauge bzw die Sekundenstoppuhr "time()" keine Unterschiede gesehen.
Legt PHP da auch irgendwelche Indextabellen an intern?
Falls jemand Rat weiß, wäre ich sehr dankbar!!
Einen Kommentar schreiben: