php仿QQ等级太阳显示函数
先引述下qq等级的算法:设当前等级为n,达到当前等级最少需要的活跃天数为d,当前活跃天数为dc,升级剩余天数为dr,则:
当前活跃天数为dc,升级剩余天数为dr,则:
从而推出:
代码:
<?php
/**
*
* qq等级输出类库
* @author 毛毛虫 <wangchong1985@gmail.com>
* @version 1.0 2008-04-09
*
*/
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="data:images/time_star.gif">';
$timage2 = '<img src="data:images/time_yueliang.gif">';
$timage3 = '<img src="data:images/time_sun.gif">';
//实例化并传输等级图片
$tshow = new showrank($timage1,$timage2,$timage3);
//输入的活跃天数
$tscore = 1009;
$echo = $tshow->get_score($tscore);
//输出显示效果
print '<div align=center>'.$echo.'</div>';
?>
php仿QQ等级太阳显示函数相关推荐
- PHP获取QQ等级,php仿QQ等级太阳显示函数
开头先引述下QQ等级的算法: 设当前等级为N,达到当前等级最少需要的活跃天数为D,当前活跃天数为Dc,升级剩余天数为Dr,则: 从而推出: 好了,引述完成,懒得写字了,贴出代码: 复制内容到剪贴板 代 ...
- iOS仿QQ空间时间显示
最近项目有类似QQ空间展示动态的UI,模仿了QQ空间的时间显示,在此记录,以备查阅. 这是QQ空间的ui: 时间显示为: 1.今天-->今天 xx:xx(今天 15:39) 2.昨天--&g ...
- 仿QQ空间标题栏显示隐藏
在QQ空间中我们经常会看到一种效果:标题栏或者状态栏在下拉或者上拉时的"渐变显示隐藏功能" ,今天我们就看看他是怎么实现的. 先看下效果图: 一:那么我们就先来说下"带B ...
- 仿QQ打开网址显示的当前网页非官方页面
简介: 使用:建个html文件把下面代码复制进去,访问你建的html文件后面加? url=网址. 网盘下载地址: http://kekewl.net/jy9Gcbdv1Gu0 图片:
- Android 仿QQ个性标签显示
/*** TagView 标签墙* @author wsm*/ class TagView @JvmOverloads constructor(context: Context, attrs: Att ...
- android人脸识显示头像自定义,Android 仿QQ头像自定义截取功能
看了Android版QQ的自定义头像功能,决定自己实现,随便熟悉下android绘制和图片处理这一块的知识. 先看看效果: 思路分析: 这个效果可以用两个View来完成,上层View是一个遮盖物,绘制 ...
- 超简单仿QQ步数显示控件
本着写文即学习的态度,记录下自定义一款超简单仿QQ步数加载控件,话不多数先看图. 一,特性: 1,外圈大圆.进度圆和数字显示的颜色均可以自定义 2,设置最大值和当前值 3,设置加载持续时间 二,实现: ...
- android采用MVP完整漫画APP、钉钉地图效果、功能完善的音乐播放器、仿QQ动态登录效果、触手app主页等源码...
Android精选源码 一个可以上拉下滑的Ui效果,觉得好看可以学学 APP登陆页面适配 一款采用MVP的的完整漫画APP源码 android实现钉钉地图效果源码 一个使用单个文字生成壁纸图片的app ...
- 循序渐进实现仿QQ界面(三):界面调色与控件自绘
本篇讲述如何进行界面调色.界面调色一般有两种方法,调色板和HSL色彩变换.调色板局限于256色,这里不采用,因此用HSL色彩变换实现.首先要了解一下什么是HSL色彩空间,完整且详尽的知识请到维基百科去 ...
最新文章
- Linux yum 命令
- 3月12日云栖精选夜读 | 安全多方计算新突破!阿里首次实现“公开可验证” 的安全方案...
- http头部content-type与数据格式
- mysql的groupby原理是啥_mysql数据库groupby报错原理是什么?
- 条件控制(if ) ( case)
- vuex 管理vue-router的传值
- Linux Vim显示行号方法详解
- 离线抓取域登录缓存hash(mscash)
- Java基础 IO流——第三部分
- Java下载安装详细教程(超详细版)
- 电信系统服务器地址,中国电信专线dns服务器地址!DNS
- Excel2013 单元格锁定
- PHP Screw php代码解密,运用php screw进行源代码加密
- flex: 1到底是什么意思?
- java中如何添加画板背景图,几何画板中如何添加背景图片
- x=rn(n)傅里叶变换matlab,第三章 离散傅立叶变换
- 霸屏综艺,牵手明星,扩列神器皮皮APP的出圈始末
- ImportError:attempted relative import with no known parent package
- 第八十四章 Caché 函数大全 $ZDATEH 函数
- python 累加器_python中的累加器
热门文章
- 用python对股票进行可视化分析_使用Python对股票进行可视化分析
- 第十诫:在规则中理解精意
- 说说靠自学成功入行java的难度
- ArcGIS坐标系转换出错:Error 999999执行函数出错 invalid extent for output coordinate system...
- 在哪里能看到计算机缓存大小,win10系统查看电脑硬盘缓存大小的办法
- Spark3-AQE-数据倾斜Join优化
- implode(): Invalid arguments passed
- 大数据应用:双十一,阿里京东该如何利用大数据寻找突破?
- 淘宝爆款返场什么意思?淘宝爆款返场怎么报名?
- 全球及中国麦克风电源行业市场发展趋势与投资战略规划研究报告2022-2028年