今日開發本站須要用到按時間歸檔文章的功能,即按文檔發佈時間將文章文類,以實現檢索和統計功能,因而本身寫了一個, 現分享給你們,相信你們工做和學習中有可能會用到,實現原理很簡單,即取出文章發佈時間戳的年月(年月日也能夠,自 決定),生成相應的統計數據,調用時只須要知道該數組元素所標識時間的起始時間戳,便能檢索出相應的數據。php
- /**
- * @desc 按時間歸檔函數實現
- * @author mengdejun
- * @param array $arrData 傳入須要歸檔類所需參數
- */
- if(!function_exists("archives_document")){
- function archives_document($arrData){
- $rv=array();
- foreach($array as $index=>$value){
- $archivesTime=date("Y-m",$value['a_uptime']);
- $rv[$archivesTime][]=$value;
- //$rv[$archivesTime]+=1;
- }
- return $rv;
- }
- }
以上代碼既能實現歸檔功能,不過須要注意的是傳入數據必須包含須要歸檔函數的時間戳,至於命名什麼的,本身看着辦。 解析時須要用到php自帶函數mktime來計算指定時間的起始時間戳。數組
- mktime(hour,minute,second,month,day,year,is_dst)
如何使用在這裏就很少廢話了,具體能夠查看http://www.w3school.com.cn/php/func_date_mktime.asp以上面的函數爲例,假設訪問地址爲:http://host/archives.php?time=2012-04ide
- $time=$_GET['time'];
- $arrTime=explode("-",$time);
- $btime = mktime(0,0,0,$arrTime[1],1,$arrTime[0]);//取出當前月第一天開始時間戳
- $etime = mktime(23,59,59,$arrTime[1],date("t"),$arrTime[0]);//取出當前月最後一天結束時間戳
- //後面的程序就你們自由發揮了,SQL查詢啥的就不廢話了。