2010/1/27 Michael A. Peters <mpeters@xxxxxxx>: > 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