$md5 = md5($filename); $dir = substr($md5, 0, 1); $subdir = substr($md5, 0, 2); $item['url'] = "https://kc.6candy.com/commons/{$dir}/{$subdir}/{$filename}"; $item['scene'] = Util::$vcScenes[$voiceId]; $item['voiceId'] = $voiceId; array_push($result, $item); } } $results[$id] = $result; } return response()->json($results); }]); $app->get('/subtitle/detail/{id:\\d{1,4}}', ['middleware' => 'cache', function ($id) { $subtitlesRaw = Util::remember('subtitles/distinct', function () { return json_decode(Storage::disk('local')->get('subtitles/subtitles_distinct.json'), true); }); $subtitles = $subtitlesRaw['zh']; $subtitlesJP = $subtitlesRaw['jp']; $ship = json_decode(Util::getShipById($id), true); $id = $ship['id']; $result = []; if (!array_key_exists($id, $subtitles) && !array_key_exists($id, $subtitlesJP)) { return response()->json($result); } for ($voiceId = 1; $voiceId < 54; $voiceId++) { if (array_key_exists($id, $subtitles) && array_key_exists($voiceId, $subtitles[$id])) { $item = []; $item['zh'] = $subtitles[$id][$voiceId]; if (array_key_exists($id, $subtitlesJP) && array_key_exists($voiceId, $subtitlesJP[$id])) { $item['jp'] = $subtitlesJP[$id][$voiceId];