lifetime; } public function getKey($id = null) { return "package_course_list:{$id}"; } public function getContent($id = null) { $packageRepo = new PackageRepo(); $courses = $packageRepo->findCourses($id); if ($courses->count() == 0) { return []; } return $this->handleContent($courses); } /** * @param CourseModel[] $courses * @return array */ public function handleContent($courses) { $result = []; foreach ($courses as $course) { $result[] = [ 'id' => $course->id, 'title' => $course->title, 'cover' => $course->cover, 'market_price' => $course->market_price, 'vip_price' => $course->vip_price, ]; } return $result; } }