Es gibt viele "Tricks" die einen Code schneller machen.
Diese Tricks können von Designfragen bis hin zu einfachen Funktionsaufrufen reichen.
Die Datenbank wurde angesprochen, jedoch ist dies finde ich kein "PHP Trick", das gehört zum Design.
Einfache PHP "Tricks" sind zum Beispiel:
- kaum HDD zugriff (File IO Operations sind meine ich langsam)
- Sinnvolle Anwendung von preg_* Funktionen
- - Es ist schneller per strpos(), strncasecmp(), str_replace() einen String zu vergleichen|ersetzen (natürlich nur wenn möglich)
- - Wenn möglich Non-Capturing preg_match, Bsp: preg_match('/(?:\w+)/i', $string)
- - per strpos() (oder ähnliches) vorprüfen, ob überhaupt eine preg_match() funktion benötigt wird
- Assoziative Arrays korrekt setzen $array['string'] anstatt $array[string]
- Kein count($xy) oder strlen($xy) in FOR loops, also nicht for($x=0;$x < count($xy); $x++) ...
- nutze Funktionen die PHP bietet, also erfinde das Rad nicht neu
- usw ...
Man kann die Liste noch um etliche Punkte erweitern. Das ganze macht nicht viel aus, vllt wenige MilliSekunden. Das summiert sich vielleicht bei ein paar Tausend Hits pro Tag.
Richtigen Speed für den User/Kunden kriegt man nur über ein gutes Design der ganzen Applikation.
Caching ist da immer sehr gut.
Caching kann man aber auch wieder in x beliebige Bereiche einteilen.
- Output Caching (Seiten cachen (am besten über RAM, z.b. per "mmCache")
- Output per HTTP GZIP an User rausgeben
- SQL Query Caching
- Browser Caching mittels HTTP Header (Expires, Last Modified, ETag)
Dann könnte man noch Kleinigkeiten aufzählen, z.B. wenn ein Status in einer Datenbank hinterlegt wird oder im PHP Script abgefragt wird, sollte der Status nicht als String hinterlegt werden, sondern per Integer , Bsp: nicht als Status "ok" sondern 1, also if($status == "ok") sondern if($status == 1). String comparison sollte langsamer sein (egal ob in php oder in der SQL Abfrage) als Integer.
Ansonsten helfen nur Tests, eine Menge Tests...
Gruss