[PHP] Performancemessung: explode / substr / preg_match
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.
GD Star Rating
loading...
loading...
Ähnliche Beiträge
- Bestes Haarwachs im Test: FONEX Professional Styling Wachs 13. Juni 2012
- Fusseln und Knötchen von Wollpullovern entfernen – mit Fusselrasierer 15. März 2014
- Alte CDs und DVDs entsorgen – wie? 20. Oktober 2009
- Der Webgains Webservice – ein Beispiel in PHP 6. März 2010
- Das beste Shampoo für Männer: Redken For Men Go Clean Shampoo 19. Mai 2013