public function getAll($withComments = false) { $response = []; try { $query = $this->db->prepare("\n SELECT temos.*, COUNT(komentarai.id) AS komentaru_sk\n FROM temos LEFT JOIN komentarai ON komentarai.temos_id = temos.id\n GROUP BY temos.id"); $query->execute(); $query->setFetchMode(\PDO::FETCH_OBJ); $resAr = []; foreach (new \RecursiveArrayIterator($query->fetchAll()) as $r) { //var_dump($r); exit; $tema = new self(); $tema->setData($r->data); $tema->setId($r->id); $tema->setKomentaruSkaicius($r->komentaru_sk); $tema->setPavadinimas($r->pavadinimas); if ($withComments) { $comments = $this::getComments($tema); if ($comments['status'] = 'success') { $tema->setKomentarai($comments['data']); } } $resAr[] = $tema; } $response['status'] = 'success'; $response['data'] = $resAr; } catch (\Exception $e) { $response['status'] = 'failed'; $response['message'] = $e->getMessage(); } return $response; }