2010/1/27 Michael A. Peters <[email protected]>:
> Paul M Foster wrote:
>>
>> "... should be obvious - but are often overlooked - points within coding
>> practice that can cause the programmer to develop bad habits and bad
>> code." - Dan Brown
>>
>> Tip #1:
>>
>> Don't use count() in loops unless there are very few items to count and
>> performance doesn't matter, or the number will vary over the loop. That
>> is, don't do this:
>>
>> for ($i = 0; $i < count($items); $i++)
>>
>> Instead, do this:
>>
>> $number = count($items);
>> for ($i = 0; $i < $number; $i++)
>
> Gah!
>
> for ($i=0;$i<sizeof($array);$i++)
>
> is something I do all the time.
> So the array size is being calculated each iteration?
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
for ($i = 0, $j = count($a) ; $i < $j ; ++$i) {
}
is a very common way to handle that.
Of course...
foreach(range(0, count($a)) as $i) {
}
is an alternative.
You can see the effect of the counting if you replace ...
count($a)
with ...
mycount($a)
and have ...
function mycount($a) {
echo 'Counting : ', count($a), PHP_EOL;
return count($a);
}
--
-----
Richard Quadling
"Standing on the shoulders of some very clever giants!"
EE : http://www.experts-exchange.com/M_248814.html
EE4Free : http://www.experts-exchange.com/becomeAnExpert.jsp
Zend Certified Engineer : http://zend.com/zce.php?c=ZEND002498&r=213474731
ZOPA : http://uk.zopa.com/member/RQuadling
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php