php获取本年、本月、本周时间戳和日期格式(2020)

 

 

获取时间戳:

//获取今日开始时间戳和结束时间戳
$time1 = strtotime(date('Y-m-d 00:00:00',time()));
$time2 = strtotime(date('Y-m-d 23:59:59',time()));

//昨天时间戳
$time1 = strtotime(date('Y-m-d 00:00:00',time()-3600*24));
$time2 = strtotime(date('Y-m-d 23:59:59',time()-3600*24));

//本周时间戳
$time1 = mktime(0,0,0,date('m'),date('d')-date('N')+1,date('y'));
$time2 = mktime(23,59,59,date('m'),date('d')-date('N')+7,date('Y'));

//上周时间戳
$time1 = mktime(0,0,0,date('m'),date('d')-date('N')-6,date('Y'));
$time2 = mktime(23,59,59,date('m'),date('d')-date('N'),date('Y'));

//本月时间戳
$time1 = mktime(0,0,0,date('m'),1,date('Y'));
$time2 = mktime(23,59,59,date('m'),date('t'),date('Y'));

//上月时间戳
$time1 = strtotime(date('Y-m-01 00:00:00',strtotime('-1 month')));
$time2 = strtotime(date("Y-m-d 23:59:59", strtotime(-date('d').'day')));

 

 

 

 

获取日期格式:

//获取今天时间
$time1=date('Y-m-d 00:00:00',time());
$time2=date('Y-m-d 23:59:59',time());

//获取昨天时间
$time1=date('Y-m-d 00:00:00',time()-3600*24);
$time2=date('Y-m-d 23:59:59',time()-3600*24);

//获取本周时间
$time1 = date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("N")+1,date("Y")));
$time2 = date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-date("N")+7,date("Y")));

//获取上周时间
$time1 = date('Y-m-d H:i:s', mktime(0,0,0, date('m'), date('d')-date('N')-6,date('Y')));
$time2 = date('Y-m-d H:i:s', mktime(23,59,59, date('m'), date('d')-date('N'),date('Y')));


//本月起始时间
echo date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),1,date("Y")));
echo date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("t"),date("Y")));


//上月起始时间
echo date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m")-1,1,date("Y")));
echo date("Y-m-d H:i:s",mktime(23,59,59,date("m") ,0,date("Y")));


//本年起始时间
echo date(‘Y-01-01’); 
echo date(‘Y-12-31’);

 

 

//获取当天年份,月份,以及当月天数
echo " 本月共有:".date("t")."天";
echo " 当前年份".date('Y');
echo " 当前月份".date('m');
echo " 当前几号".date('d');

 

获取当前时间戳:

var_dump(time()); //获取当前时间戳 int(1502245603)

时间戳转换为日期时间,可以用date(‘Y-m-s h:i:s’, 具体时间戳来实现).

Y :年(四位数)大写 
m : 月(两位数,首位不足补0) 小写 
d :日(两位数,首位不足补0) 小写 
H:小时 带有首位零的 24 小时小时格式 
h :小时 带有首位零的 12 小时小时格式 
i :带有首位零的分钟 
s :带有首位零的秒(00 -59) 
a:小写的午前和午后(am 或 pm)
$time = date('Y-m-s h:i:s',time());//时间戳转为日期格式

当前时间:echo date(”Y-m-d H:i:s”,time()) 结果:2020-05-17 09:40:25

 

日期转换为时间戳:

/*
  时间戳转换成日期不用说了
  但是日期要转成时间戳的话就要用到
  strtotime()
  */
$time = time(); //时间戳
  $nowtime = date('Y-m-d H:i:s', $time); //生成带格式的日期
  $oldtime = '2010-11-10 22:19:21';
  $catime = strtotime($oldtime); //日期转换为时间戳
  $nowtimes = date('Y-m-d H:i:s', $catime); //时间戳又转回日期了
  echo $nowtimes;

 

中时间戳转换为日期:

$time = date('Y-m-s h:i:s',time());//时间戳转为日期格式

 

 

 

 

 

注意:使用到时间戳与date日期设置的时候不要忘记时区的设置:

date_default_timezone_set('PRC'); //设置中国时区

 

 

 

 

 

 

 

 

 

作者:赖忠标

日期:2020.5.17

 

上一篇:Mysql5.6 timestamp datetime 精度问题(23:59:59 无法存储)


下一篇:mysql之数据类型