QQ等级算法

开头先引述下qq等级的算法:

设当前等级为n,达到当前等级最少需要的活跃天数为d,当前活跃天数为dc,升级剩余天数为dr。

代码:

<?php

class showrank {

    /**
     * 第一级图片显示字段
     */
    public $mimage1;

    /**
     * 第二级图片显示字段
     */
    public $mimage2;

    /**
     * 第三级图片显示字段
     */
    public $mimage3;
    /**
     * 构造函数:传入图片值
     * @return 无
     */
    function __construct($pimage1 = ‘★‘,$pimage2 = ‘▲‘,$pimage3 = ‘●‘) {
        $this->mimage1 = $pimage1;
        $this->mimage2 = $pimage2;
        $this->mimage3 = $pimage3;
    }

    /**
     * 根据活跃天数计算用户等级。(模仿qq的升级方式)
     * @return int
     * @access public
     */
    function get_rank($pscore) {
        $temp = $pscore+4;
        $trank = sqrt($temp)-2;
        $trank = floor($trank);
        return $trank;
    }

    /**
     * 用户等级标志,根据用户等级显示用户标志
     * 仿照qq等级的四进制显示
     * @return str
     * @access public
     */
    function get_score($pscore) {
        $str = ‘‘;
        $trank = $this->get_rank($pscore);//根据分数取得等级
        $tpicnum = base_convert($trank,10,4);//转化为四进制
        $tpicnum = strrev($tpicnum);//翻转字符串
        $tarray = str_split($tpicnum);//转化为数组
        $tnum = count($tarray);
        if($tnum<=3) {
            for($i=$tnum-1;$i>=0;$i--){
                switch($i){
                    case ‘0‘:
                        for($j=0;$j<$tarray[$i];$j++){
                            $str .= $this->mimage1;
                        }
                    break;
                    case ‘1‘:
                        for($j=0;$j<$tarray[$i];$j++){
                            $str .= $this->mimage2;
                        }
                    break;
                    case ‘2‘:
                        for($j=0;$j<$tarray[$i];$j++){
                            $str .= $this->mimage3;
                        }
                    break;
                    default:
                        //$str = ;
                    break;
                }
            }
        }else {
            $str =     $this->mimage3.$this->mimage3.$this->mimage3.$this->mimage3;
        }
        return $str;
    }
}
?>

以上就是显示类,再来个简单的调用实例:

复制内容到剪贴板

代码:

<?php
require_once(‘showrank.php‘);
//定义等级图片
$timage1 = ‘<img src="images/time_star.gif">‘;
$timage2 = ‘<img src="images/time_yueliang.gif">‘;
$timage3 = ‘<img src="images/time_sun.gif">‘;
//实例化并传输等级图片
$tshow = new showrank($timage1,$timage2,$timage3);
//输入的活跃天数
$tscore = 1009;
$echo = $tshow->get_score($tscore);
//输出显示效果
print ‘<div align=center>‘.$echo.‘</div>‘;
?>

原文地址:http://lixiangfeng.com/blog/article/content/7836228

时间: 2024-10-12 02:15:51

QQ等级算法的相关文章

你的QQ等级是否好几个太阳了,然而并没有什么卵用?

你的QQ是几个太阳了?当初QQ刚推出等级的时候,你有没有通宵挂QQ等级?挂了这么久的等级,有没有感觉QQ等级上去了,然而并没有什么卵用? 然而 ,等级对于不同的平台来说,有些作用很大,有些就差不多成鸡肋了.对于很多游戏来说,等级越高那么你的角色就越牛逼.对于如今的通讯工具来说,等级却起到微乎其微的作用,甚至一些通讯软件已经取消了等级制度,像微信.陌陌等. 前两天有个朋友问我的淘宝账号是什么等级,能否借给她用一下?当时有点懵了,难道他们自己没有淘宝账号吗?干嘛要借我的用?后来仔细询问,才得知,然来

QQ等级表

什么是QQ等级呢? 2003年,腾讯公司推出了QQ等级制度 . 最早是以小时,来计算的,那段时间,绝大部分QQ用户都在挂QQ,之后就有不少媒体指责其浪费能源,在有关部门的介入下,腾讯公司将QQ等级变为以天为单位,每天只要在线两个小时就算一天. 半小时以上.两小时以下则记为,半天. QQ等级最先开始的样子是星星,4个星星等于一个月亮,4个月亮等于一个太阳. 4个太阳等于一个皇冠.一开始增加一个星星只用几天,到后面就要越来越多的天数来升级了. (即:1个星星为1级,1个月亮为4级,1个太阳为16级,

龙跃QQ等级查询软件

龙跃QQ等级查询软件 软件可多线程快速查询QQ的等级,年龄,导出分类数据,无需拔号,验证码少,查询速度每小时超30万以上. 一.软件功能 (1)可查询QQ等级,分类导出: (2)可查询QQ年龄,分类导出: (3)可多线程运行,软件效率非常高,每小时30万以上: (4)不需要换IP,软件上可不设置宽带账号: (5)可试用3小时,满意后购买: (6)验证码数量非常少,可使用远程打码,已接入超人,UU,知码平台: 二.运行环境 (1)windows XP或windows 7操作系统环境: (2)电脑须

QQ等级QQ性别QQ年龄QQ达人天数查询器

[使用QQ资料查询器的卡号即可激活使用]软件功能:批量查询别人的QQ等级,QQ性别,QQ年龄,QQ手机达人天数等等资料!采用安卓QQ客户端协议进行查询,速度快 赢软件  QQ 2713437237 创赢软件  QQ 2713437237

算法:QQ等级换算成皇冠太阳星星月亮

/// <summary> /// 等级换算成图标分布 /// 以QQ的形式计算 /// 2^(2*0) /1    /// 2^(2*1) /4    /// 2^(2*2) /16   /// 2^(2*3) /64   /// </summary> /// <param name="target">目标等级</param> /// <param name="x">计算底数</param>

2017 最新qq登录算法 2

整体流程变化不大,参考之前的帖子 http://www.cnblogs.com/reaper-spring/p/6290837.html 除了加密脚本又变了,剩下的就是堵上了之前算法的一个无用参数: URL_GETTYPE = 'http://captcha.qq.com/cap_union_new_gettype' + '?aid=%s' % APPID +\ '&asig=&captype=&protocol=http&clientype=2&disturble

吐血分享:QQ群霸屏技术教程(利润篇)

QQ群技术,不论日进几百,空隙时间多的可以尝试,日进100问题不大. QQ群技术,如何赚钱,能赚多少钱?不同行业,不同关键词,不同力度,不一样的产出. 群费 群费,这个和付费群是有区别的,群费在手机端显示. QQ群费,这个常见于一些兴趣群.同城群之类的,等同于份子钱,比如聚个会,结伴游啥的. 1.手机端,以群主的身份点开自己的群. 2.点击右上角的群成员图标. 3.点击更多,进入群应用,找到群费. 4.点击发布群费,设置金额. 5.群费发布后,会显示到QQ群中,这个操作只有群主可以做. 群费,这

【学习笔记】2017年7月18日MySQL测试:模拟QQ数据库

模拟测试: QQ数据库管理 一.创建数据库并添加关系和测试数据 1 ##创建QQ数据库,完成简单的测试 2 3 #创建数据库 4 DROP DATABASE IF EXISTS MyQQ; 5 CREATE DATABASE MyQQ; 6 USE MyQQ; 7 8 #在数据库创建基本数据表 9 10 #创建User表 11 DROP TABLE IF EXISTS `User`; 12 CREATE TABLE `User`( 13 qqID INT(11) NOT NULL PRIMARY

笔试算法题(53):四种基本排序方法的性能特征(Selection,Insertion,Bubble,Shell)

四种基本算法概述: 基本排序:选择,插入,冒泡,希尔.上述算法适用于小规模文件和特殊文件的排序,并不适合大规模随机排序的文件.前三种算法的执行时间与N2成正比,希尔算法的执行时间与N3/2(或更快)成正比: 前三种算法在平均,最坏情况下都是N2,而且都不需要额外的内存:所以尽管他们的运行时间只相差常数倍,但运行方式不同: 对于已经就序的序列而言,插入排序和冒泡排序的运行时间都是O(N),但是选择排序的时间仍旧是O(N^2): 因为Insertion和Bubble都是相邻项间的比较交换,所以不会出