Mailinglisten-Archive |
Sebastian Mendel wrote: > Hi, > > ich habe eine Klasse die eine Liste zur Verfügung stellt, dachte ich mir, > toll, kannste ja das SPL ArrayObject verwenden, > > nun wollte ich aber die Liste erst erstellen lassen wenn sie tatsächlich > gebraucht wird, im Gegensatz zu dem Objekt selber, welches immer existiert > > aber irgendwie finde ich nicht die Stelle wo ich mich einhaken bevor > irgendwas auf die Liste zugreift, ist das nicht vorgesehen oder finde ich es > nur nicht? > > momentan müsste ich mich in jede Funktion einzeln einzeln einklinken um die > Liste bei Bedarf (falls noch nicht existent) vorher zu erzeugen > > z. B. > > public function getIterator() > { > if (count($this) == 0) { > $this->build(); > } > return parent::getIterator(); > } > > allerdings halt auch in count(), getOffest(), setOffset(), ... usw. Ja, richtig. Etwas eniger wird es, wenn du das IteratorAggregate-Interface implementierst, dass dann dein iterierbares Objekt in der Methode getIterator zurückgibt. Aber sonst musst du dich in jeder der Funktionen einhaken... So aufwendig ist es doch auch nicht :-). Yannik
php::bar PHP Wiki - Listenarchive