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