Ejemplo n.º 1
0
 public function sort($tid, Request $request)
 {
     $sorts = BiliBiliHelper::getSorts();
     //分类非法检测
     if (!array_has($sorts, $tid)) {
         return $this->returnError('分类不存在');
     }
     $order = $request->get('order', 'hot');
     $page = $request->get('page', 1);
     //页码非法检测
     $page = $page < 1 ? 1 : $page;
     if ($order == 'hot' && $page == 1) {
         $sort_list = Cache::get('sort_cache');
         $date = Cache::get('refresh_time');
         $sort = $sort_list[strval($tid)];
     } else {
         try {
             $request_array = ['tid' => $tid, 'order' => $order, 'page' => $page, 'pagesize' => 20];
             $date = date('H:i:s');
             $back = RequestUtil::getUrl(BiliBiliHelper::$SERVICE_URL . '/sort?' . http_build_query($request_array));
             $sort = $back['content'];
         } catch (\Exception $e) {
             return $this->returnError('服务器君忙,待会再试吧...');
         }
     }
     return view('sort')->with('content', $sort)->with('tid', $tid)->with('page', $page)->with('date', $date);
 }
Ejemplo n.º 2
0
 public function sort($tid, Request $request)
 {
     $sorts = BiliBiliHelper::getSorts();
     //分类非法检测
     if (!array_has($sorts, $tid)) {
         return $this->returnError('分类不存在');
     }
     $order = $request->get('order', 'hot');
     $page = $request->get('page', 1);
     //页码非法检测
     if ($page < 1) {
         $page = 1;
     }
     //默认取出redis
     if ($order == 'hot' && $page == 1) {
         $redis = new Client();
         $date = $redis->hget('update', 'sort');
         $sort = $redis->hget('sort', $sorts[$tid]);
         $sort = json_decode($sort, true);
     } else {
         try {
             $request_array = ['tid' => $tid, 'order' => $order, 'page' => $page, 'pagesize' => 20];
             $date = date('H:i:s');
             $back = RequestUtil::getUrl(BiliBiliHelper::$SERVICE_URL . '/sort?' . http_build_query($request_array));
             $sort = $back['content'];
         } catch (\Exception $e) {
             return $this->returnError('服务器君忙,待会再试吧...');
         }
     }
     return view('sort')->with('content', $sort)->with('tid', $tid)->with('page', $page)->with('date', $date);
 }
Ejemplo n.º 3
0
<?php

use App\Utils\BiliBiliHelper;
use App\Utils\RequestUtil;
use Illuminate\Support\Facades\Cache;
$app = (require __DIR__ . '/bootstrap/app.php');
date_default_timezone_set('PRC');
try {
    $sort_list = [];
    foreach (BiliBiliHelper::getSorts() as $key => $value) {
        $request_array = ['tid' => $key, 'order' => 'hot', 'page' => '1', 'pagesize' => '20'];
        $back = RequestUtil::getUrl(BiliBiliHelper::$SERVICE_URL . '/sort?' . http_build_query($request_array));
        $sort_list[$key] = $back['content'];
    }
    $index = RequestUtil::getUrl(BiliBiliHelper::$SERVICE_URL . '/index');
    $refresh_time = date('H:i:s');
    $bangumi = RequestUtil::getUrl(BiliBiliHelper::$SERVICE_URL . '/bangumi?type=2');
    $bangumi_result = [];
    for ($i = 0; $i < 7; $i++) {
        $day_bangumi = [];
        $bangumi_result[$i] = $day_bangumi;
    }
    foreach ($bangumi['content']['list'] as $animation) {
        if (isset($animation['cover'])) {
            array_push($bangumi_result[$animation['weekday']], $animation);
        }
    }
    Cache::forever('index_cache', $index['content']);
    Cache::forever('sort_cache', $sort_list);
    Cache::forever('bangumi_cache', $bangumi_result);
    Cache::forever('refresh_time', $refresh_time);
Ejemplo n.º 4
0
 public function test()
 {
     try {
         $sort_list = [];
         foreach (BiliBiliHelper::getSorts() as $key => $value) {
             $request_array = ['tid' => $key, 'order' => 'hot', 'page' => '1', 'pagesize' => '20'];
             $back = RequestUtil::getUrl(BiliBiliHelper::$SERVICE_URL . '/sort?' . http_build_query($request_array));
             $sort_list[$key] = $back['content'];
         }
         $index = RequestUtil::getUrl(BiliBiliHelper::$SERVICE_URL . '/index');
         $refresh_time = date('H:i:s');
         $bangumi = RequestUtil::getUrl(BiliBiliHelper::$SERVICE_URL . '/bangumi?type=2');
         $bangumi_result = [];
         for ($i = 0; $i < 7; $i++) {
             $day_bangumi = [];
             $bangumi_result[$i] = $day_bangumi;
         }
         foreach ($bangumi['content']['list'] as $animation) {
             if (isset($animation['cover'])) {
                 array_push($bangumi_result[$animation['weekday']], $animation);
             }
         }
         Cache::forever('index_cache', $index['content']);
         Cache::forever('sort_cache', $sort_list);
         Cache::forever('refresh_time', $refresh_time);
         Cache::forever('bangumi_cache', $bangumi_result);
         dd('ok');
     } catch (\Exception $e) {
         dd($e);
     }
 }