获取日期时间戳
获取当前时间戳:
time()
//10位时间戳
获取当前日期:
date('Y-m-d H:i:s')
//连接符可以随便写 '-' , '/' 等,
具体参数查看php日期date函数详解
获取当前13位时间戳:
echo getTime13();
//自定义方法
function getTime13() {
list($t1, $t2) = explode(' ', microtime());
return (float)sprintf('%.0f',(floatval($t1)+floatval($t2))*1000);
}
获取3位毫秒数:
getMillisecond();
// 自定义方法
function getMillisecond(){
list($usec, $sec) = explode(" ", microtime());
$msec=round($usec*1000);
return sprintf('d',$msec);
}
日期转时间戳:
strtotime(date("Y/m/d"));
时间戳转日期:
date('Y-m-d',time());
获取日期相关
当前时间加一天数时间戳:
strtotime("+1 day");
// 当前时间戳+1天
当前时间减一天数时间戳:
strtotime("-1 day");
// 当前时间戳-1天
当期日期加减天数:
echo date("Y-m-d H:i:s",strtotime("+1 day")) ;
// 当前日期加1天
当前日期加一周:
date("Y-m-d H:i:s",strtotime("+1 week"));
当期日期加一个月:
date("Y-m-d H:i:s",strtotime("+1 month"));
当期日期加一年:
date("Y-m-d H:i:s",strtotime("+1 year"));
当前时间减去12小时:
date("Y-m-d H:i:s",strtotime("-12 hour"));
指定日期减去一个月:
date('Y-m-d', strtotime("2020-07-18 -1 month"));
// 获得2020-06-18
下个星期日:
date("Y-m-d H:i:s",strtotime("next Sunday"));
//注意一周的开始时间为周日
上一个星期日:
date("Y-m-d H:i:s",strtotime("Previous Sunday"));
示例:
$startDate="2020-07-11 11:49:00";
$endDate = "2020-07-12 10:45:09";
两个时间相差天数:
floor((strtotime($endDate)-strtotime($startDate))/86400);
两个时间相差小时:
floor((strtotime($endDate)-strtotime($startDate))/3600);
两个时间相差分钟:
floor((strtotime($endDate)-strtotime($startDate))/60);
两个时间相差秒:
floor((strtotime($endDate)-strtotime($startDate)));
本周日:
echo date('Y-m-d', (time() + ((date('w') == 0 ? 7 : date('w'))) * 24 * 3600));
//
w为星期几的数字形式,0为周日,每周第一天为周日
本周一:
date('Y-m-d', (time() - ((date('w') == 0 ? 1 : date('w')) - 1) * 24 * 3600));
如果每周从周一开始周日结束,获取上周一到周日:
开始:
date('Y-m-d', (time() - (((date('w') == 0 ? 1 : date('w')) - 1)+7) * 24 * 3600))
结束:
date('Y-m-d', (time() - (((date('w') == 0 ? 0 : date('w')))) * 24 * 3600))
如果每周从周日开始周六结束,获取上周日到周六:
开始:
date('Y-m-d', (time() - (((date('w') == 0 ? 1 : date('w')) - 1)+8) * 24 * 3600));
结束:
date('Y-m-d', (time() - (((date('w') == 0 ? 0 : date('w')))+1) * 24 * 3600));
获取上个月1号到上个月最后一天:
开始:
date('Y-m-01 00:00:00',strtotime('-1 month'));
结束:
date('Y-m-d 23:59:59',strtotime(-date('d').'day'));
获取去年整年:
开始:
date('Y-01-01 00:00:00', strtotime("-1 year"));
结束:
date('Y-12-31 23:59:59', strtotime("-1 year"));