質問編集履歴

1

追加

2019/03/13 13:53

投稿

sk2938
sk2938

スコア21

test CHANGED
File without changes
test CHANGED
@@ -31,3 +31,87 @@
31
31
  }
32
32
 
33
33
  ```
34
+
35
+ RaningModele.php
36
+
37
+ ```
38
+
39
+ <?php
40
+
41
+
42
+
43
+ namespace App\Http\Controllers;
44
+
45
+
46
+
47
+ use Illuminate\Http\Request;
48
+
49
+ use Redis;
50
+
51
+
52
+
53
+ class RankingModule extends Controller
54
+
55
+ {
56
+
57
+ public function increment_view_ranking($id)
58
+
59
+ {
60
+
61
+ $key = "article/" . date('Ymd') . "/" . $id;
62
+
63
+
64
+
65
+ $value = Redis::get($key);
66
+
67
+ if(empty($value)){
68
+
69
+ Redis::set($key, 1);
70
+
71
+ }else{
72
+
73
+ Redis::set($key, $value + 1);
74
+
75
+ }
76
+
77
+ }
78
+
79
+
80
+
81
+ public function get_daily_ranking()
82
+
83
+ {
84
+
85
+ $keys = Redis::keys('article/' . date('Ymd') . '/*');
86
+
87
+ $results = Array();
88
+
89
+
90
+
91
+ if(empty($keys) != true){
92
+
93
+ for($i=0; $i<sizeof($keys); $i++){
94
+
95
+ $point = Redis::get($keys[$i]);
96
+
97
+ $id = explode('article/' . date('Ymd') . '/', $keys[$i])[1];
98
+
99
+ $results[$id] = $point;
100
+
101
+ }
102
+
103
+ arsort($results, SORT_NUMERIC);
104
+
105
+ }
106
+
107
+ return $results;
108
+
109
+ }
110
+
111
+ }
112
+
113
+ ```
114
+
115
+ 参考にしているサイトです
116
+
117
+ https://qiita.com/esu_eichi/items/e3abe72f55b53865acf5