php excel 函数,php实现excel中rank函数功能的方法
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函数功能的方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 魔兽争霸III 1.20, 1.21 1
- 下一篇: OJ1038: 绝对值最大