Mailinglisten-Archive |
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.
die Einzig andere Möglichkeit wäre das Objekt eben nicht generell zu
erzeugen, sondern immer nur über eine Factory darauf zu zugreifen, wollte
ich aber eigentlich auch nicht ...
also
foreach (Class::Factory() as $item) {...}
count(Class::Factory());
anstelle von
foreach ($ListObject as $item) {...}
count($ListObject);
irgendwelche Kommentare, Ideen, Vorschläge?
--
Sebastian Mendel
php::bar PHP Wiki - Listenarchive