[dokuwiki] even faster header stuff (was: Re: darcs changes)
- From: Andreas Gohr <andi@xxxxxxxxxxxxxx>
- To: dokuwiki@xxxxxxxxxxxxx
- Date: Wed, 12 Apr 2006 20:48:06 +0200
On Wed, 12 Apr 2006 10:19:32 +0100
Chris Smith <chris@xxxxxxxxxxxxx> wrote:
> Andreas Gohr wrote:
> > -------------------------------------------------------------------
> > -- Tue Apr 11 20:27:21 CEST 2006 Andreas Gohr
> > <andi[at]splitbrain.org>
> > * releaxed header syntax
> > -------------------------------------------------------------------
> > --
> What is the status of the header changes after this last patch?
I just discovered a much simpler and faster method: strspn()
The code now boils down to:
$level = 7 - strspn($match,'=');
if($level < 1) $level = 1;
$title = trim($match,'= ');
I just did some profiling for 5000 parsed headlines:
Your method using preg_split and strlen:
Time Taken Number of Calls Function Name
0.0336592736 5000 preg_split()
0.0049825367 5000 strlen()
Using just strspn:
Time Taken Number of Calls Function Name
0.0066876130 5000 strspn()
I didn't bother to test my old method using the lookup array, it was
probably much much slower than both of the above.
Andi
- Follow-Ups:
- [dokuwiki] Re: even faster header stuff
- From: Chris Smith
- References:
- [dokuwiki] darcs changes
- From: Andreas Gohr
- [dokuwiki] Re: darcs changes
- From: Chris Smith
Other related posts:
- » [dokuwiki] even faster header stuff (was: Re: darcs changes)
- [dokuwiki] Re: even faster header stuff
- From: Chris Smith
- [dokuwiki] darcs changes
- From: Andreas Gohr
- [dokuwiki] Re: darcs changes
- From: Chris Smith