PHP 自定义方法,传递时间,返回与当前时间的相差时间
//对比当前时间
function format_date($dateStr) {
$limit = time() - strtotime($dateStr);
$r = "";
if($limit < 60) {
$r = '刚刚';
} elseif($limit >= 60 && $limit < 3600) {
$r = floor($limit / 60) . '分钟前';
} elseif($limit >= 3600 && $limit < 86400) {
$r = floor($limit / 3600) . '小时前';
} elseif($limit >= 86400 && $limit < 2592000) {
$r = floor($limit / 86400) . '天前';
} elseif($limit >= 2592000 && $limit < 31104000) {
//$r = floor($limit / 2592000) . '个月前';
$r = $dateStr;
} else {
$r = $dateStr;
}
//return $r . "(" . $dateStr . ")";
return $r;
}
返回当前天的 0 点时间戳 和 结束时间戳
// 从数据库里面查询一天24小时的数据 要求每个小时为一段
public function mySelect(){
$res = 'selct * from tablename';
$y = date('y');
$m = date('m');
$d = date('d');
//当天0点时间戳
$start = (int)mktime(0,0,0,$m,$d,$y);
//当天结束时间戳
$end = (int)mktime(23,59,59,$m,$d,$y);
$arr = [];
foreach($res as $k=>$v){
$mytime = intval(strtotime($v['time']));
if($start<=$mytime && $mytime<$start+3600){//0点~1点
$arr[0][$k] = $v;
}elseif($start+3600<=$mytime && $mytime<$start+7200){//1点~2点
$arr[1][$k] = $v;
}else{//23点~次日0点
$arr[23][$k] = $v;
}
}
return $arr;
}
网友评论