jue/rank

此包最新版本(v1.0.0.3)没有可用的许可证信息。

这是php排名组件

v1.0.0.3 2017-04-02 12:13 UTC

This package is not auto-updated.

Last update: 2024-09-29 01:53:17 UTC


README

一个基于php开发的排名组件(php排名)

Jrank正式发布了,它为你提供排名功能所需的要素,文档完善,功能齐全,低耦合,通过composer引入,支持二次开发。

如果公司需要做排名活动,统计排名等与排名相关的事情,就交给JRank吧。

提供

  • CounterRank 基础完备的排名功能 | 函数排名
  • DateRank 时间维度排名功能 | 日期排名
  • MutliRank 多排名交并功能 | 排名并集
  • PagerRank 分页排名功能 | 分页排名

当前稳定版本为1.0.0.3版本

版本迭代:

v1.0.0.3

  • 更新carbon

v1.0.0.2

  • 提供分页排名功能
  • 完善文档

v1.0.0.1

  • 提供多排名交并功能
  • 重构代码

v1.0.0.0

  • 提供时间维度排名功能
  • 修复遗留bug

安装 | 安装

composer require jue/rank

例子 | 示例

CounterRank : 测试示例

DateRank: 测试示例

MutliRank:测试示例

PagerRank:测试示例

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);

PagerRank的详细介绍和使用哦(博客路径,可以留言吐槽)

Pager的详细介绍和使用哦,(gitHub路径)

回到顶部