⑴ php如何統計ip在log文件中出現次數並排名
<?php
$log = file_get_contents('ip.log');
preg_match_all('/(?:^|\n+)((?:(?:(?:25[0-5])|(?:2[0-4][0-9])|(?:[0-1]*[0-9]{1,2}))\.){3})(?:(?:25[0-5])|(?:2[0-4][0-9])|(?:[0-1]*[0-9]{1,2}))/',$log,$matches);
var_mp($matches);
$count = array_count_values($matches[1]);
arsort($count); //排序
var_mp($count);
//End_php
⑵ php如何實現分數排名,判斷該學生第幾名,如圖
先根據票數倒序查詢票數表,sql語句大概是
"SELECT 學生id,票數 FROM 票數表 ORDER BY 票數 DESC";假設得到的結果集賦值為 $res,
再用PHP遍歷,
$student=array();
foreach($resas$key=>$value){
$student[$value['學生id']]=$key+1;
}
最後就可以得到student排名數組,鍵是學生的id,值就是學生的排名。
⑶ php數組中單個數據在數組中的排名怎麼實現小於某給定排名值的數據以"-(橫杠)"替代,不改就原數組順序
sort($arr);由小到大的順序排序(第二個參數為按什麼方式排序)忽略鍵名的數組排序
rsort($arr);由大到小的順序排序(第二個參數為按什麼方式排序)忽略鍵名的數組排序
⑷ php如何統計ip在log文件中出現次數並排名
讀取LOG,遍歷,前三段作為數組鍵,匹配到一次,對應鍵值就累加。
示例:
foreach($log as $val) {
if(in_array($val, array_keys($array))) $array['192.168.1']++;
}
這只是一個思路哦,$val如果192.168.1.12要作一下處理,取前三段,不然就沒法匹配了,以上代碼供參考,希望能幫助到您。
⑸ php排行榜代碼
前十SQL:
SELECT * FROM `some_table`
ORDER BY `score`
LIMIT 10
自己名次如ls:
SELECT COUNT(`score`) FROM `some_table`
WHERE` score`>(SELECT `score` FROM `some_table` WHERE id=#用戶的id);
就是獲得比自己分數高的人有多少
⑹ php怎麼編寫排行版
需要兩張表,一個是記錄表,一個是排行表
用戶收藏後,會在記錄表裡記錄一條(id,uid,time)的數據
在排行表裡判斷是否有uid=當前用戶的數據,如果沒有就創建一條(id,uid,count=1)的數據,如果有就把uid=uid的這條數據更新(set count=count+1)
然後排行榜就直接從排行表裡通過count desc排序就可以了
⑺ 怎麼用PHP編寫排行榜
可以給你的資料庫裡面添加一個投票次數的欄位,根據這個欄位,查詢時候SQL語句後面 order by 投票次數 desc 就可以排行了。
⑻ php mysql 查詢排名
你要現成代碼懶得寫給你.我個人想到的一個方法,
你可以通過id查詢toupiaos的值,然後再查詢比這個id(比如id為4)的值小的值,再統計下有多少個?然後你就可以根據結果得出排名了.