php仿QQ等级太阳显示函数
2017-01-12 13:33
381 查看
先引述下qq等级的算法:设当前等级为n,达到当前等级最少需要的活跃天数为d,当前活跃天数为dc,升级剩余天数为dr,则:
当前活跃天数为dc,升级剩余天数为dr,则:
从而推出:
代码:
以上就是显示类,再来个简单的调用实例:
复制内容到剪贴板
代码:
先引述下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="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>'; ?>
相关文章推荐
- 自己动手修改QQ等级,想要几个太阳就有几个太阳!
- php 遍历显示文件夹下所有目录、所有文件的函数,没有分页的代码
- php 随机显示图片的函数代码
- php bom去除工具_php批量去除bom的代码[交流qq 158393237] 微信管家不显示验证码 微信管家无法显示验证码
- PHP-去掉php中var_dump()函数输出的省略号,让它完整显示0.0
- 在PHP的图形函数中显示汉字
- php:解决简体和繁体字在网页界面显示乱码的函数
- php 随机显示图片的函数(实例分享)
- php分页显示函数 源代码
- php时间戳格式化显示友好的时间函数分享
- PHP学习(一个通用的显示数据集的函数)
- php文章页码的分页显示 函数 类似于Google搜索下面的分页
- PHP5.2中date()函数显示时间与北京时间相差8小时的解决办法
- php 随机显示图片的函数(实例)
- ROW_NUMBER() OVER函数的基本用法(根据部门分组,显示每个部门的工资等级)
- php 遍历显示文件夹下所有目录、所有文件的函数,没有分页的代码
- PHP5.2中date()函数显示时间与北京时间相差8小时的解决办法
- php 遍历显示文件夹下所有目录、所有文件的函数
- php中的date()函数时,显示出来的时间都与本地时间不一样。
- PHP笔记-自动加载函数库与扩展函数库定义及模板显示与模板替换地址