jue / rank
There is no license information available for the latest version (v1.0.0.3) of this package.
this is php rank
v1.0.0.3
2017-04-02 12:13 UTC
Requires
- nesbot/carbon: ^1.21
This package is not auto-updated.
Last update: 2024-11-10 02:24:06 UTC
README
一个基于php开发的排名组件(php rank)
Jrank正式发布了,他是一个能够给你提供排名功能所必需的要素,文档完善,功能齐全,低耦合,composer引入,二次开发.
假如公司需要做排名活动,统计排名,等等和排名相关的东西,就交给JRank
吧。
提供
- CounterRank 基础完备的排名功能 | functions rank
- DateRank 时间纬度排名功能 | date rank
- MutliRank 多排名交并功能 | rank union
- PagerRank分页排名功能 | pager rank
目前稳定版本为1.0.0.3版本
版本迭代:
v1.0.0.3
- 更新
carbon
包
v1.0.0.2
- 提供分页排名功能排名功能
- 完善文档
v1.0.0.1
- 提供多排名交并功能
- 重构代码
v1.0.0.0
- 提供时间维度排名功能
- 修复遗留bug
安装 | Install
composer require jue/rank
例子 | Example
CounterRank : testExample
DateRank: testExample
MutliRank:testExample
PagerRank:testExample
CounterRank
所有其他排名组件都基于CounterRank,Counter提供最完备的排名功能,任何Cache只要实现IRedis
的方法即可使用CounterRank,默认使用\Redis
.
实例
$rank = new CounterRank($redis,'activity','test');//新建一个counterRank
getRankKey :获取当前rank使用的key值 ☺️
var_dump($rank->getRankKey()); //结果: activity:test
addRankField : 给rank添加一个field(类似于我给排名加一个游戏玩家的id和他拿了多少分):smirk:
$rank->addRankField(1, 2);
getRankScore: 获取想要的field的score(类似于我想知道某个游戏玩家的分数):kissing_closed_eyes:
var_dump($rank->getRankScore(1)); //结果: 2
CounterRank的详细介绍和使用哦(博客路径,可以留言吐槽)
CounterRank的详细介绍和使用哦,(gitHub路径)
DateRank
实例(以下例子使用的都是Carbon库来处理时间)
$rank = new DateRank($redis,'activity','test', Carbon::now());
getRankKey:获取当前rank使用的key值 ☺️
var_dump("rankKey:".$rank->getRankKey()); //结果: activity:test:2017-03-31
DateRank的详细介绍和使用哦(博客路径,可以留言吐槽)
DateRank的详细介绍和使用哦,(gitHub路径)
MutliRank
实例(以下例子使用的都是Carbon库来处理时间)
$rank1 = new DateRank($redis,'activity','test', Carbon::now()); $rank2 = new DateRank($redis,'activity','test', Carbon::tomorrow()); $rank1->addRankField(1,2); $rank1->addRankField(2,4); $rank2->addRankField(1,2); $mutliRank = new MutliCounterRank([$rank1,$rank2], $redis);
MutliRank的详细介绍和使用哦(博客路径,可以留言吐槽)
MutliRank的详细介绍和使用哦,(gitHub路径)
PagerRank
实例(以下例子使用的都是Carbon库来处理时间)
$rank = new CounterRank($redis, 'activity', 'pager'); $rank->batchAddRankField([ 1 => 2, 2 => 4, 3 => 3, 4 => 20, 5 => 7, 6 => 13, 7 => 10, 8 => 13, 9 => 9 ]); $pager = new PagerRank($rank,5,2);