[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
REDAXO Forum • OOArticle/OOCategory: List-Methoden geben "null" z
Seite 1 von 1

OOArticle/OOCategory: List-Methoden geben "null" z

Verfasst: 16. Aug 2005, 20:29
von shaded
Hallo,

ich poste den Bug hier nochmal, in dem andern Thread ist er wohl untergegangen ,-) Ein Unterforum "Bugs" für R3 wäre nicht schlecht.

Einige der List-Methoden (OOCategory->getChildrenById, OOArticle->getArticlesOfCategory sind mir auf die Schnelle aufgefallen) geben den Wert 'null' zurück, wenn keine Artikel bzw. Subkategorien vorhanden sind. Beim Abarbeiten mit foreach kriege ich dann immer die Meldung

Warning: Invalid argument supplied for foreach() in ...

Entsprechend scheitern alle Funktionen, die sich per foreach durch die Struktur hangeln sollen, und das OOFramework lässt sich nicht sinnvoll verwenden.

Sollten die List-Funktionen nicht entweder komplett scheitern (error) oder ein Array (leer oder nicht) zurückgeben? Ist 'null' da nicht fehl am Platze?

Verfasst: 17. Aug 2005, 08:57
von vscope
prinzipiell gibt eine funktion immer ein false zurück wenn es kein normales return gibt. ein array wäre in deinem fall wahrscheinlich praktischer aber damit würde man das ganze konzept der oop klassen inkompatibel machen.

schreib halt einfach ein

Code: Alles auswählen

$ookats = OOCategory::getCategoryById('1');
if($ookats):
foreach($ookats as $kat):
print_r($kat);
endofreach;
endif;
lg

vscope

Verfasst: 17. Aug 2005, 19:50
von shaded
Moment mal...
vscope hat geschrieben:prinzipiell gibt eine funktion immer ein false zurück wenn es kein normales return gibt.
Es ist doch ein ganz normaler Fall, dass eine Kategorie keine Unterkategorien hat. In dem Fall ist die Liste der Kindobjekte leer. Ein "unnormaler" Fall wäre nach meinem Verständnis, wenn z.B. eine der Kategorien aus dem Cache (generated) nicht existiert, dann ergibt "null" tatsächlich einen Sinn.
vscope hat geschrieben:ein array wäre in deinem fall wahrscheinlich praktischer aber damit würde man das ganze konzept der oop klassen inkompatibel machen
Inwiefern? Ich sehe grad nicht den Sinn dieses Konzeptes... wahrscheinlich sind das meine OOPphilosophischen Scheuklappen, wie schonmal bei den RootCategories ;-)

Viele Grüße

shaded