php实现excel中rank函数功能的方法

发布于 2015-10-28 18:54:25 | 77 次阅读 | 评论: 0 | 来源: 网友投递

PHP开源脚本语言PHP(外文名: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,入门门槛较低,易于学习,使用广泛,主要适用于Web开发领域。PHP的文件后缀名为php。

这篇文章主要介绍了php实现excel中rank函数功能的方法,较为详细的分析了rank函数的功能及具体实现方法,需要的朋友可以参考下

本文实例讲述了php实现excel中rank函数功能的方法。分享给大家供大家参考。具体分析如下:

sql语句实现排名是像这样的如:

总分成绩为 195,180,180,161,名次分别为1,2,3,4,遇到并列的情况也是按照顺序的,

而Excel函数rank排名得到的结果是1,2,2,4,遇到并列跳过中间的3

下面的函数模拟的就是这种情况

函数如下(不知道有没有更好的实现方法):

公式为: 名次=总人数--比自己小的数的个数-这个分数重复次数+1(加上自己)

得到名次的数组再根据对应的id写入到数据库,就实现rank的计算功能

(当然这个也可以改成这样195,180,180,165,名次是这样的1,2,2,3)

代码如下:

//获得一组数的名次的数组

function rank(array $array){

foreach($array as $val){

$repeat=get_array_repeats($val,$array);

$num=gt_array_values($val,$array);

$rank[]=count($array)-$num-$repeat+1;

}

return $rank;

}

//获得比自己数小的个数

function gt_array_values($val,array $array){

$num=0;

for($i=0;$i

if($val>$array[$i]){

$num++;

}

}

return $num;

}

//获得这个数的重复次数

function get_array_repeats($string,array $array) {

$count = array_count_values($array);

foreach ($count as $key => $value) {

if ($key == $string) {

return $value;

}

}

}

相关阅读:

php实现excel中rank函数功能的方法

jQuery+PHP实现微信转盘抽奖功能的方法

PHP实现JS中escape与unescape的方法

用PHP实现var_export函数功能的方法

php实现ip白名单黑名单功能的代码

php实现带读写分离功能的MySQL类完整实例

PHP实现一边执行一边输出结果的方法示例

php实现获取Youku 视频绝对地址的方法示例

php实现禁IE和火狐缓存的方法

PHP实现MVC开发得最简单的方法——模型

PHP实现递归转义数组的方法

PHP实现模仿socket请求返回页面的方法

php excel 函数,php实现excel中rank函数功能的方法相关推荐

  1. 计算机成绩表名次用什么函数,使用Excel中Rank函数对学生成绩名次进行排列

    学生成绩的排名,在Excel可以应用数据处理中的升序或者降序的功能而实现,但是如果在已经对学生的学号进行了升序或者降序排列以后,为了确保学生的学号次序不变,而实现学生成绩的名次排列,则需要利用Exce ...

  2. java中rank函数_SQL中的排名函数(ROW_NUMBER、RANK、DENSE_RANK、NTILE)简介

    排名函数是Sql Server2005新增的功能,下面简单介绍一下他们各自的用法和区别. 在使用排名函数的时候需要注意以下三点: 1.排名函数必须有 OVER 子句. 2.排名函数必须有包含 ORDE ...

  3. 通过GetProcAddress函数动态调用dll中地函数,是否必须通过extern C声明导出函数?(转)...

    通过GetProcAddress函数动态调用dll中的函数,是否必须通过extern "C"声明导出函数? [已结贴,结贴人:darongtou] 如题,网上搜了N多资料,一直找不 ...

  4. python symbol函数展开_QGIS表达式中的函数

    编程语言中的函数,与数学函数的定义大不相同.在计算机领域,函数是指一段可以直接被另一段程序或代码引用的程序或代码,也叫做子程序(subroutine).过程(procedure).方法(method) ...

  5. php开发中常用函数总结,PHP开发中常用函数总结

    PHP开发中常用函数总结 发布于 2014-10-31 08:34:03 | 48 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP(外文名: Hypertext Preproc ...

  6. GetProcAddress()函数动态调用DLL中的函数,是否必须通过extern C声明导出函数?

    GetProcAddress()函数动态调用DLL中的函数,是否必须通过extern C声明导出函数? 通过GetProcAddress函数动态调用dll中的函数,是否必须通过extern " ...

  7. python——函数(定义函数、传递实参、返回值、传递列表、传递任意数量的实参、将函数存储在模块中、函数编写指南)

    目录 定义函数 传递实参 返回值 传递列表 传递任意数量的实参 将函数存储在模块中 函数编写指南 定义函数 #------定义函数---------- def user():print('hello! ...

  8. 痞子衡嵌入式:在MDK开发环境下将关键函数重定向到RAM中执行的几种方法

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是在MDK开发环境下将关键函数重定向到RAM中执行的几种方法. 这个关键函数重定向到 RAM 中执行系列文章,痞子衡已经写过 <IA ...

  9. 痞子衡嵌入式:在IAR开发环境下将关键函数重定向到RAM中执行的三种方法

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是在IAR开发环境下将关键函数重定向到RAM中执行的三种方法. 嵌入式项目里应用程序代码正常是放在 Flash 中执行的,但有时候也需要将 ...

最新文章

  1. mysql编程的二维数组_调出mysql中数据,输出一个二维数组的表格
  2. AC日记——中位数 洛谷 P1168
  3. 在VS2015中使用Boost库
  4. cpu功耗排行_2020 主流手机处理器排行榜
  5. 如果在我爸的朋友圈当杠精,会挨揍吗?
  6. Linux head命令:显示文件开头的内容
  7. mysql 设置一个字段为null_MySQL中,为什么要设置NOT NULL?
  8. 1712新生素拓活动总结
  9. [转] 面试必问的16个经典问题的回答思路
  10. Soda PDF Desktop Pro(电脑版pdf编辑器软件)官方正式版V12.0.283.16292 | 电脑pdf编辑器哪个好用?
  11. Arch Linux下 让MPlayer用上CoreAVC1.7.0.0解码器
  12. java实验指导书 eclipse_《Java语言程序设计实验指导书》实验指导书.doc
  13. 在线计算机进制换算,进制转换计算器
  14. VSCode运行Java报错No delegateCommandHandler for vscode.java.resolveMainMethod
  15. 配置cfree 5 支持C++11
  16. mysql插入数据不成功_mysql插入数据失败原因分析
  17. 网页游戏是如何快速推广,寻找真实玩家。提高充值消费的。这里都有教程
  18. 魔兽世界3.35+mysql_新魔兽世界3.35兔子王版本商业 一键启动服务端
  19. python处理word页码_使用Python向Word文档添加页码
  20. js实现活动时间倒计时

热门文章

  1. 使用开发者工具调试jsp页面中的脚本
  2. AsyncTask理解- Day36or37
  3. Windows环境下的NodeJS+NPM+Bower安装配置步骤
  4. 蛋疼的strtok函数
  5. 楼天成夺Facebook黑客杯季军,已被Facebook录用得到美国绿卡
  6. Jwplayer5.10视频拍照(截图)
  7. 终于有人把Knative讲明白了
  8. 相关和因果是一回事吗?R值低就是不相关?终于有人讲明白了
  9. 普林斯顿校长2018演讲:读书无用是最大的谎言
  10. 重磅!阿里首次全面公开展示AI布局(附布局图/成绩单/六产业详解)