chapters[$id] ?? null; } public function getByMangaIdAndChapterNumber(string $mangaId, float $chapterNumber): Chapter { foreach ($this->chapters as $chapter) { if ($chapter->mangaId === $mangaId && $chapter->chapterNumber === $chapterNumber) { return $chapter; } } throw new ChapterNotFoundException(); } public function save(Chapter $chapter): void { $this->chapters[$chapter->id] = $chapter; } public function clear(): void { $this->chapters = []; } }