Hallo zusammen,
ich habe gerade meine erste Extension fertiggestellt und es hat auch alles gut funktioniert. Nun gibt es jedoch ein schwerwiegendes Problem und ich bin am verzweifeln. Kurz zum Vorgehen. Ich habe ein Model TourDate, in dem es eine property "date" vom Typ DateTime gibt. Ich nutze das Repository, um mir allen TourDaten-Objekte zu holen:
$tourDates = $this->tourDateRepository->findUpcoming();
Die Objekte werden erfolgreich geholt und ich durchlaufe diese in einer foreach-Schleife, um evtl. Touren herauszufiltern, welche einen bestimmten Timestamp besitzen...
Es funktioniert alles, aber nach manchmal 5, manchmal 3 oder 7 Stunden erscheint folgender Fehler:
Fatal error: Call to a member function getTimestamp() on a non-object
In der DB haben alle Einträge einen date-Eintrag, so dass dieser Wert definitiv exsitieren muss, auch gibt es die Objekte, denn sonst würde die foreach-Schleife nicht durchlaufen werden. Hier der Code der Schleife:
$filteredArray = array();
/** @var TourDate $row */
foreach ($tourDates as $row) {
$tour = $row->getTour();
/** @var \DateTime $dateObject */
$dateObject = $row->getDate();
if($dateObject->getTimestamp() == $todayTS && $tour->getTourstarted()) {
continue;
}
$filteredArray[] = $row;
}
$tourDates = $filteredArray;
$this->view->assign('tourDates', $tourDates);
Das $dateObject ist manchmal NULL und ich bin am Ende meines Lateins.
Vielleicht kann jemand helfen, kennt das Problem?
Die Controller-Action läuft ungecashed und es gibt auch ein Verwaltungs-Interface, wo auf die DB-Tabellen zugegriffen wird. Ich bin am überlegen, ob es gleichzeitige Zugriffe gibt und es irgendwann crashed, denn wenn man den Cache löscht, geht alles wieder, aber das kann nicht des Rätsels Lösung sein.
Für alle Hinweise bin ich sehr dankbar!
Gruß
Robert
