Tom: PHP Funktion nicht doppelt ausführen...

Beitrag lesen

Hello,

ich überlege wie ich die Performance meines PHP scriptes erhöhen kann. Hierbei ist mir beim loggen der Scriptzeiten aufgefallen, das ich offenbar Funktionen zwei mal ausführe:

if (get_fuss($laenge,$breite) != false) {$result[] = get_fuss($laenge,$breite);}

gibt es hierfür eine bessere Lösung? Das würde meine Scritplaufzeiten sicher deutlich verbessern.

Ja. Erst die Wertzuweisung auf eine Variable durchführen und dann die Variable auswerten.
Deine Variante könnte in Multiuserumgebungen sogar noch eine gefährliche Falle enthalten. Wenn Deine Funktion get_fuss() nämlich auf geteilte Ressourcen zugreifen sollte, schaffst Du Dir ein Nebenläufigkeitsproblem.

if (($fuss = get_fuss($laenge,$breite)) !== false)
{
    $result[] = $fuss;
}
else
{
    $result[] = DEFAULT;
}

Liebe Grüße aus dem schönen Oberharz

Tom vom Berg

--
 ☻_
/▌
/ \ Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de