PHPackages                             jue/rank - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. jue/rank

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

jue/rank
========

this is php rank

v1.0.0.3(9y ago)086PHP

Since Apr 1Pushed 8y ago1 watchersCompare

[ Source](https://github.com/masixun71/Jrank)[ Packagist](https://packagist.org/packages/jue/rank)[ RSS](/packages/jue-rank/feed)WikiDiscussions master Synced 2mo ago

READMEChangelogDependencies (1)Versions (3)Used By (0)

Jrank
=====

[](#jrank)

### 一个基于php开发的排名组件（php rank）

[](#一个基于php开发的排名组件php-rank)

[![](/img/Jrank.png "我的博客，欢迎关注")](https://masixun.win "我的博客，欢迎关注")

#### Jrank正式发布了，他是一个能够给你提供排名功能所必需的要素，文档完善，功能齐全，低耦合，composer引入，二次开发.

[](#jrank正式发布了他是一个能够给你提供排名功能所必需的要素文档完善功能齐全低耦合composer引入二次开发)

#### 假如公司需要做排名活动，统计排名，等等和排名相关的东西，就交给`JRank`吧。

[](#假如公司需要做排名活动统计排名等等和排名相关的东西就交给jrank吧)

---

*提供*

- [CounterRank](#counterrank) 基础完备的排名功能 | functions rank
- [DateRank](#daterank) 时间纬度排名功能 | date rank
- [MutliRank](#mutlirank) 多排名交并功能 | rank union
- [PagerRank](#pagerrank)分页排名功能 | pager rank

---

#### 目前稳定版本为1.0.0.3版本

[](#目前稳定版本为1003版本)

#### 版本迭代：

[](#版本迭代)

v1.0.0.3

- 更新`carbon`包

v1.0.0.2

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

v1.0.0.1

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

v1.0.0.0

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

安装 | Install
------------

[](#安装-------install)

```
composer require jue/rank
```

---

例子 | Example
------------

[](#例子-------example)

**CounterRank** : [testExample](/src/Test/TestCounterRank.php)

**DateRank**: [testExample](/src/Test/TestDateCounterRank.php)

**MutliRank**:[testExample](/src/Test/TestMutliCounterRank.php)

**PagerRank**:[testExample](/src/Test/TestPagerRank.php)

---

CounterRank
-----------

[](#counterrank)

所有其他排名组件都基于CounterRank,Counter提供最完备的排名功能，任何Cache只要实现`IRedis`的方法即可使用CounterRank,默认使用`\Redis`.

### *实例*

[](#实例)

```
$rank = new CounterRank($redis,'activity','test');//新建一个counterRank
```

##### getRankKey ：获取当前rank使用的key值 ☺️

[](#getrankkey-获取当前rank使用的key值-️)

```
var_dump($rank->getRankKey());

//结果:	activity:test
```

##### addRankField : 给rank添加一个field（类似于我给排名加一个游戏玩家的id和他拿了多少分）:smirk:

[](#addrankfield--给rank添加一个field类似于我给排名加一个游戏玩家的id和他拿了多少分smirk)

```
$rank->addRankField(1, 2);
```

##### getRankScore: 获取想要的field的score（类似于我想知道某个游戏玩家的分数）:kissing\_closed\_eyes:

[](#getrankscore-获取想要的field的score类似于我想知道某个游戏玩家的分数kissing_closed_eyes)

```
var_dump($rank->getRankScore(1));
//结果:	2
```

#### [CounterRank的详细介绍和使用哦(博客路径，可以留言吐槽)](http://masixun.win/2017/03/30/JRank-CounterRank/)

[](#counterrank的详细介绍和使用哦博客路径可以留言吐槽)

#### [CounterRank的详细介绍和使用哦,(gitHub路径)](./doc/counterRank.md)

[](#counterrank的详细介绍和使用哦github路径)

DateRank
--------

[](#daterank)

### *实例*(以下例子使用的都是Carbon库来处理时间)

[](#实例以下例子使用的都是carbon库来处理时间)

```
$rank = new DateRank($redis,'activity','test', Carbon::now());
```

#### getRankKey:获取当前rank使用的key值 ☺️

[](#getrankkey获取当前rank使用的key值-️)

```
var_dump("rankKey:".$rank->getRankKey());

//结果:
activity:test:2017-03-31
```

#### [DateRank的详细介绍和使用哦(博客路径，可以留言吐槽)](http://masixun.win/2017/03/30/JRank-CounterRank/)

[](#daterank的详细介绍和使用哦博客路径可以留言吐槽)

#### [DateRank的详细介绍和使用哦,(gitHub路径)](./doc/dateRank.md)

[](#daterank的详细介绍和使用哦github路径)

MutliRank
---------

[](#mutlirank)

### *实例*(以下例子使用的都是Carbon库来处理时间)

[](#实例以下例子使用的都是carbon库来处理时间-1)

```
$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的详细介绍和使用哦(博客路径，可以留言吐槽)](http://masixun.win/2017/03/30/JRank-CounterRank/)

[](#mutlirank的详细介绍和使用哦博客路径可以留言吐槽)

#### [MutliRank的详细介绍和使用哦,(gitHub路径)](./doc/mutliRank.md)

[](#mutlirank的详细介绍和使用哦github路径)

PagerRank
---------

[](#pagerrank)

### *实例*(以下例子使用的都是Carbon库来处理时间)

[](#实例以下例子使用的都是carbon库来处理时间-2)

```
$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的详细介绍和使用哦(博客路径，可以留言吐槽)](http://masixun.win/2017/03/30/JRank-CounterRank/)

[](#pagerrank的详细介绍和使用哦博客路径可以留言吐槽)

#### [Pager的详细介绍和使用哦,(gitHub路径)](./doc/pagerRank.md)

[](#pager的详细介绍和使用哦github路径)

[回到顶部](#Jrank)

###  Health Score

28

—

LowBetter than 54% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity9

Limited adoption so far

Community4

Small or concentrated contributor base

Maturity64

Established project with proven stability

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

2

Last Release

3329d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/2b3c64e496bcef59a9a12a74f9383e80acd78ea2fa4836d6ddb8f7f8873b0b69?d=identicon)[masixun71](/maintainers/masixun71)

---

Tags

phpphprankrank

### Embed Badge

![Health badge](/badges/jue-rank/health.svg)

```
[![Health](https://phpackages.com/badges/jue-rank/health.svg)](https://phpackages.com/packages/jue-rank)
```

###  Alternatives

[ashallendesign/short-url

A Laravel package for creating shortened URLs for your web apps.

1.4k1.9M4](/packages/ashallendesign-short-url)[solspace/craft-freeform

The most flexible and user-friendly form building plugin!

52664.9k12](/packages/solspace-craft-freeform)[intervention/zodiac

Zodiac Sign Calculator

58191.7k](/packages/intervention-zodiac)[erlandmuchasaj/laravel-gzip

Gzip your responses.

40129.3k2](/packages/erlandmuchasaj-laravel-gzip)[solspace/craft-calendar

The most powerful event management and calendaring plugin!

1830.8k1](/packages/solspace-craft-calendar)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
