|
|
<?php
namespace App\Common;
class DataTime{ /** * 处理时间为空时的时间显示格式 * @param $time * @return string */ public static function format($time) { if (is_numeric($time)&&$time>0) { return date('Y-m-d H:i', $time); } elseif (empty($time) || $time->format('Y-m-d') == '1970-01-01') { return '-'; } return $time->format('Y-m-d H:i'); }
/** * 查询时间范围 * @param $option * @return array */ public static function beginAndEnd($option) { $t = time(); switch ($option) { case 'today': $beginTime = date('Y-m-d H:i:s', mktime(0, 0, 0, date("m", $t), date("d", $t), date("Y", $t))); $endTime = date('Y-m-d H:i:s',mktime(0, 0, 0, date('m'), date('d') + 1, date('Y')) - 1); break; case 'yesterday': $beginTime = date('Y-m-d H:i:s',mktime(0, 0, 0, date('m'), date('d') - 1, date('Y'))); $endTime = date('Y-m-d H:i:s',mktime(0, 0, 0, date('m'), date('d'), date('Y')) - 1); break; case '7day': $beginTime = date('Y-m-d H:i:s',mktime(0, 0, 0, date('m'), date('d') - 7, date('Y'))); $endTime = date('Y-m-d H:i:s',mktime(0, 0, 0, date('m'), date('d') + 1, date('Y')) - 1); break; case 'week': $timestamp = mktime(0, 0, 0, date('m'), date('d') - date('w') + 1, date('Y')); $beginTime = date('Y-m-d H:i:s', $timestamp);
//本周结束日期
$timestamp = mktime(23, 59, 59, date('m'), date('d') - date('w') + 7, date('Y')); $endTime= date('Y-m-d H:i:s',$timestamp); break; case 'last_week': $beginTime = date('Y-m-d H:i:s',mktime(0, 0, 0, date("m"), date("d") - date("w") + 1 - 7, date("Y"))); $endTime = date('Y-m-d H:i:s',mktime(23, 59, 59, date("m"), date("d") - date("w") + 7 - 7, date("Y"))); break; case 'month': $beginTime = date('Y-m-d H:i:s',mktime(0, 0, 0, date('m'), 1, date('Y'))); $endTime = date('Y-m-d H:i:s',mktime(23, 59, 59, date('m'), date('t'), date('Y'))); break; case 'last_month': $beginTime = date('Y-m-d H:i:s',mktime(0, 0, 0, date('m') - 1, 1, date('Y'))); $endTime = date('Y-m-d H:i:s',strtotime(date("Y-m-d H:i:s", mktime(23, 59, 59, date("m"), 0, date("Y"))))); break; default: $searchTime = request()->input('created_at'); if ($searchTime){ $beginTime = date('Y-m-d H:i:s',strtotime($searchTime['start'])); $endTime = date('Y-m-d H:i:s',strtotime($searchTime['end'])); }else{ $beginTime = 0; $endTime = 999999999999; } break; } return [$beginTime,$endTime]; }}
|