note 50235 added to language.oop5.iterations

From: Date: Tue, 22 Feb 2005 16:09:20 +0000
Subject: note 50235 added to language.oop5.iterations
Groups: php.notes 
Request: Send a blank email to php-notes+get-85379@lists.php.net to get a copy of this message
You should be prepared for your iterator's current method to be called before its next method is ever called. This certainly happens in a foreach loop. If your means of finding the next item is expensive you might want to use something like this private $item; function next() { $this->item = &$this->getNextItem(); return $this->item; } public function current() { if(!isset($this->item)) $this->next(); return $this->item; } ---- Manual Page -- http://www.php.net/manual/en/language.oop5.iterations.php Edit -- http://master.php.net/manage/user-notes.php?action=edit+50235 Delete: added to the manual -- http://master.php.net/manage/user-notes.php?action=delete+50235&report=yes&reason=added+to+the+manual Delete: bad code -- http://master.php.net/manage/user-notes.php?action=delete+50235&report=yes&reason=bad+code Delete: spam -- http://master.php.net/manage/user-notes.php?action=delete+50235&report=yes&reason=spam Delete: useless -- http://master.php.net/manage/user-notes.php?action=delete+50235&report=yes&reason=useless Delete: other reasons -- http://master.php.net/manage/user-notes.php?action=delete+50235&report=yes Reject -- http://master.php.net/manage/user-notes.php?action=reject+50235&report=yes Search -- http://master.php.net/manage/user-notes.php

« previous php.notes (#85379) next »