Welcome 微信登录

首页 / 网页编程 / PHP / php将日期格式转换成xx天前的格式

本文实例讲述了php将日期格式转换成xx天前格式的方法。分享给大家供大家参考。具体如下:
这段代码可以把时间格式化成3天前,5秒前,2年前的形式
// convert a date into a string that tells how long ago// that date was.... eg: 2 days ago, 3 minutes ago.function ago($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]."s ago"; } } return "";}// you can replace this if need be. // This converts my dates returned from a mysql date string // into an array object similar to that returned by getdate().function datetoarr($d) { preg_match("/([0-9]{4})(\-)([0-9]{2})(\-)([0-9]{2})([0-9]{2})(\:)([0-9]{2})(\:)([0-9]{2})/",$d,$matches); return array("seconds" => $matches[10],"minutes" => $matches[8],"hours" => $matches[6],"mday" => $matches[5],"mon" => $matches[3],"year" => $matches[1],);}
希望本文所述对大家的php程序设计有所帮助。