php将日期格式转换成xx天前的格式
本文实例讲述了php将日期格式转换成xx天前格式的方法。分享给大家供大家参考。具体如下:
这段代码可以把时间格式化成3天前,5秒前,2年前的形式
//convertadateintoastringthattellshowlongago //thatdatewas....eg:2daysago,3minutesago. functionago($d){ $c=getdate(); $p=array('year','mon','mday','hours','minutes','seconds'); $display=array('year','month','day','hour','minute','second'); $factor=array(0,12,30,24,60,60); $d=datetoarr($d); for($w=0;$w<6;$w++){ if($w>0){ $c[$p[$w]]+=$c[$p[$w-1]]*$factor[$w]; $d[$p[$w]]+=$d[$p[$w-1]]*$factor[$w]; } if($c[$p[$w]]-$d[$p[$w]]>1){ return($c[$p[$w]]-$d[$p[$w]]).''.$display[$w].'sago'; } } return''; } //youcanreplacethisifneedbe. //Thisconvertsmydatesreturnedfromamysqldatestring //intoanarrayobjectsimilartothatreturnedbygetdate(). functiondatetoarr($d){ preg_match("/([0-9]{4})(\\-)([0-9]{2})(\\-)([0-9]{2})([0-9]{2})(\\:)([0-9]{2})(\\:)([0-9]{2})/",$d,$matches); returnarray( 'seconds'=>$matches[10], 'minutes'=>$matches[8], 'hours'=>$matches[6], 'mday'=>$matches[5], 'mon'=>$matches[3], 'year'=>$matches[1], ); }
希望本文所述对大家的php程序设计有所帮助。