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

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

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

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

回到顶部