Mailinglisten-Archive |
On Wed, 23 Jun 1999, Norbert Pfeiffer wrote: > Hallo Character-Zaehler, > > >> ich haette da eine etwas unkonventionelle loesung: > >> $textArr = split("x", $text); > >> $menge = count($textArr)-1; > > > Noch eine solche: ;-) > > $num = strlen($text) - strlen( str_replace("x", "", $text) ); > > >> ich weiss allerdings nicht, inwieweit dieses konstrukt bei > >> laengeren strings performance schluckt. > > und hier das ultimative Test-Ergebnis: > 1. Lauf: Source: PHP-Manual ges: 'e' > ------------------------------------------- > 680927 Byte in DataBase gespeichert. > ------------------------------------------- Methode: strlen(); > 62502 Zeichen in 2.811,06 ms gefunden. > ------------------------------------------- Methode: explode(); > 62502 Zeichen in 1.129,13 ms gefunden. > ------------------------------------------- > 2. Lauf: Source: SELFHTML ges: 'e' > ------------------------------------------- > 2682434 Byte in DataBase gespeichert. > ------------------------------------------- Methode: strlen(); > 308380 Zeichen in 56.685,06 ms gefunden. > ------------------------------------------- Methode: explode(); > 308380 Zeichen in 6.245,30 ms gefunden. > ------------------------------------------- > Suche erfolgte Zeilenweise nach der genannten Methode > in Volltext-Datenbanken (1 Dokument = 1 Zeile). > > Nun kan jeder selbst seinen Reim drauf machen :-) > Oder hat jemand noch eine andere Methode ? Ja, wie wärs hiermit: bash-2.01$ time wc bigmanual.html 60040 124677 999424 bigmanual.html real 0m0.510s user 0m0.120s sys 0m0.030s bash-2.01$ -Egon
php::bar PHP Wiki - Listenarchive