get($type), true); return app('json')->successful('ok', $board); } /** * 讀取数据库中每日榜单的今日榜单 */ protected function daily_win_money() { $board = new UserBoard(); $res = $board->getDailyWinMoney(); foreach ($res as &$row) { $row['value'] = floatval($row['value']); $row['border'] = 0; $row['vip'] = 0; } return [ 'banner' => Config::get('app.leader_board_banner'), 'name' => "日榜", 'board' => $res, ]; } /** * 缓存数据库取得的排行结果,定时调用 */ public function cache_board() { $real_board = $this->daily_win_money(); $robot_board = Robots::first_n_by_value(30); $board = array_merge($robot_board, $real_board['board']); // 过滤掉 value == 0 的记录 $board = array_filter($board, function ($v) { return $v['value'] > 0.0; }); usort($board, function ($l, $r) { return $r['value'] <=> $l['value']; }); $real_board['board'] = $board; $res = (new BoardRds)->set(BoardRds::DAILY, json_encode($real_board)); if (!$res) { errlog("cache_board() returned $res"); } } }