ホームページ >バックエンド開発 >PHPチュートリアル >トレンドを加味したランキング版を実現
ランキングボードのトレンドを知るにはどうすればよいですか?
これは...問題を明確に説明できることを願っています。
これは...問題を明確に説明できることを願っています。
たとえば、週ごとのランキング、ユーザーが消費した金貨に基づいたランキング、特定のユーザーが今週上昇傾向または下降傾向を示しています!
これは...問題を明確に説明できることを願っています。
たとえば、週ごとのランキング、ユーザーが消費した金貨に応じたランキング、今週特定のユーザーが上昇傾向または下降傾向にあるなど!
データベースのデータを読み込んでアイコンを出力するのは直感的で簡単ですよね?思考回路に行き詰まっていませんか?コードに行き詰まっていませんか?行き詰まっています...
これは... 問題を明確に説明できることを願っています。
たとえば、週ごとのランキング、ユーザーが消費した金貨に応じたランキング、今週特定のユーザーが上昇傾向または下降傾向にあるなど!
データベースのデータを読み込んでアイコンを出力するのは直感的で簡単ですよね。思考回路に行き詰まっていませんか?コードに行き詰まっていませんか?行き詰まっています...
傾向に行き詰まっています。ユーザーが増加しているのか、減少しているのか、それとも横ばいのままなのかをどのように判断すればよいでしょうか。
週間ランキング?
すると、今週の消費量、先週の消費量になります
今週の消費量 > 先週の消費量が増加し、その逆も同様です
週ごとのランキング?
次に、今週の消費量、先週の消費量です
今週の消費量 > 先週の消費量が増加し、その逆も同様です
この場合、2 週間のランキングを記録する必要がありますか? ?
比較することによってのみ特定できます
過去のデータがない場合、現在増加しているか減少しているかをどうやって知ることができますか?
比較することによってのみ特定できます
過去のデータがない場合、現在増加しているか減少しているかをどうやって知ることができますか?
$old_rank = array( "1"=>array('uid'=>132,'use_score'=>61570), "2"=>array('uid'=>121,'use_score'=>50932), "3"=>array('uid'=>145,'use_score'=>46789), "4"=>array('uid'=>100,'use_score'=>39089), "5"=>array('uid'=>167,'use_score'=>29089) ); $new_rank = array( "1"=>array('uid'=>132,'use_score'=>61570), "2"=>array('uid'=>145,'use_score'=>51932), "3"=>array('uid'=>121,'use_score'=>50932), "4"=>array('uid'=>167,'use_score'=>40089), "5"=>array('uid'=>100,'use_score'=>39089) );
rreeeArray
(
[132] => 0
[145] => 5143
[121] => 0
[167] => 11000
[100] => 0
)
//先变形为这样,即用 uid 做键。生成这些数据时就应该这样做好$old_rank = array( 132=>array('uid'=>132,'use_score'=>61570), 121=>array('uid'=>121,'use_score'=>50932), 145=>array('uid'=>145,'use_score'=>46789), 100=>array('uid'=>100,'use_score'=>39089), 167=>array('uid'=>167,'use_score'=>29089));$new_rank = array( 132=>array('uid'=>132,'use_score'=>61570), 145=>array('uid'=>145,'use_score'=>51932), 121=>array('uid'=>121,'use_score'=>50932), 167=>array('uid'=>167,'use_score'=>40089), 100=>array('uid'=>100,'use_score'=>39089));foreach($new_rank as $k=>$v) $res[$k] = $v['use_score'] - $old_rank[$k]['use_score'];print_r($res);Array