Allgemein
[PHP] Performancemessung: explode / substr / preg_match
Montag, 17. September 2007 - 21:48 Uhr
Wir kamen heute auf die Performance beim Zerhacken von Strings zu sprechen, und weil ich das immer schon einmal machen wollte, hier ein kleiner Performance-Test verschiedener Varianten, die alle zum selben Ziel führen.
Test: einfaches Splitten
Ausgangslage: $str = "a,b";, auf a und b soll hinterher einzeln zugegriffen werden können.
Die Möglichkeiten:
$v = explode (",", $str);
$p = strpos ($str, ",");
$a = substr ($str, 0, $p);
$b = substr ($str, $p+1);
preg_match("@(.+?),(.+?)@is", $str, $v);
Ergebnis (n = 1.000.000):
| explode | substr | preg_match |
|---|---|---|
| 3.39 s | 4.22 s | 4.89 s |
Das Testsystem war PHP 4.4.2 auf Apache 2.2.2. Die Ergebnisse sind doch recht deutlich: Bei solchen kleinen Problemen ist explode() die beste Wahl.
loading...
Ähnliche Beiträge
- HTTP/1.1 301 Moved Permanently 1. September 2007
- [PHP] Umlaut-Domain Darstellung von Punycode in “normale” Umlaute konvertieren 28. November 2011
- [PHP] array_flatten() 7. Dezember 2007
- Tabellenlayout gefällig? 1. April 2008
- Terrorismus, Bomben und Zensur 11. September 2007

Hey, hier bloggt Jan Papenbrock. Er studiert Wirtschaftsinformatik an der Uni Münster. Nebenbei erstellt er Webseiten und interessiert sich für SEO.