实现排行版带有趋势的

WBOY
發布: 2016-06-23 14:23:55
原創
792 人瀏覽過

实现排行版带有趋势的,该怎么实现呢?


回复讨论(解决方案)

这个... ... 希望你将问题描述清楚。

这个... ... 希望你将问题描述清楚。
比如按周排行,根据用户的消耗的金币来排行,某个用户这周有上升的趋势或者下降的趋势!


这个... ... 希望你将问题描述清楚。
比如按周排行,根据用户的消耗的金币来排行,某个用户这周有上升的趋势或者下降的趋势!

读数据库数据然后输出图标 直观简洁吧? 你是卡在思路?卡在代码?卡在....



这个... ... 希望你将问题描述清楚。
比如按周排行,根据用户的消耗的金币来排行,某个用户这周有上升的趋势或者下降的趋势!

读数据库数据然后输出图标 直观简洁吧? 你是卡在思路?卡在代码?卡在....
我是卡在趋势上面,我该怎么判断用户是上升还是下降还是保持不变!

按周排行?
那么你就有:本周消耗、上周消耗
于是 本周消耗 > 上周消耗 上升,反之下降

按周排行?
那么你就有:本周消耗、上周消耗
于是 本周消耗 > 上周消耗 上升,反之下降
如果是这样是不是都要记录起来啊,我可以保留两周的排行版了?

有比较才能有鉴别
如果你没有过往的数据,那如何能知道现在是增加还是减少了呢?

有比较才能有鉴别
如果你没有过往的数据,那如何能知道现在是增加还是减少了呢?

	$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)		);
登入後複製

想问下,像这样的,我有什么好的办法其中的uid是上升还是下降或者是不变呢?

//先变形为这样,即用 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
(
[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
(
    [132] => 0
    [145] => 5143
    [121] => 0
    [167] => 11000
    [100] => 0
)
恩,多谢!结贴!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!