em = $em; } /** * Gebe alle {@see Article}-Objekte, nach id absteigend sortiert, zurück. * * @return Article[] */ function getArticles(): array { $criteria = $this->em->createSimpleCriteria(Article::class, null, array('id' => 'DESC')); return $criteria->toQuery()->fetchArray(); } /** * Gebe alle {@see Article} zurück, welche dem übergebenen Kategorienamen entsprechen. * * @return array */ function getArticlesByCategoryName(string $categoryName): array { $criteria = $this->em->createSimpleCriteria(Article::class, array('categoryName' => $categoryName), array('id' => 'DESC')); return $criteria->toQuery()->fetchArray(); } /** * Gebe den {@see Article} mit der enstprechenden ID zurück. * * @param int $id * @return Article|null */ function getArticleById(int $id): ?Article { return $this->em->find(Article::class, $id); } function saveArticle(Article $article) { $this->em->persist($article); } function removeArticle(int $articleId) { $this->em->remove($this->getArticleById($articleId)); } }