Ezra Nugroho wrote:
> It was a long time since I post any question to this list, like back at
> php 3x time. Boy, a lot has change now.
>
> So I actually did kick some funny bones, not quite flames yet. And
> that's good, I don't really like that.
>
> <Wolf>
> We aren't going to take the time
> to answer a rhetorical question when you can STFW, RTFM, or RTA.
> </Wolf>
>
> Who are "we"? I hope you are not talking about php community in general.
> I would be really sad if that's true. Unfortunately, it seems like
> that's the trend in this list. I want newbies to succeed, hence my talk
> about such tool. O.W. newbies will go to RoR instead.
>
> Anyways,
>
> Have you ever seen things like
>
> for ($i = 0; $i < count($some_array); $i++) {
> //do stuff
> }
>
>
> Do you know how slow it is if $some_array gets big compared to
>
> $array_count = count($some_array);
> for ($i = 0; $i < $array_count; $i++) {
> //do stuff
> }
>
>
> Of course you do!
> But newbies might not....
Of course! Every time you ask for the count of an array PHP loops
through every item meaning that a doing many counts on a large array (an
O(n^2) operation) reduces your program to a crippling crawl.
Hang on a tic, that doesn't sound like the PHP that I know.
PHP knows the size of the array, doing a count(array) just returns an
existing internal number. The count() function doesn't get any slower
with the array size and calling a simple function isn't significantly
slower than accessing a variable. In fact, the above examples with an
array of 100,000 elements didn't result in either script being
consistantly faster than the other.
David
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php