date时间函数
时间函数:
date();和time();的相互转换
time(); 在PHP中单位是秒,在js中是毫秒。
microtime(); 毫秒
date('Y-m-d H:i:s',time()); 把时间戳转换为日期格式
strtotime(date()); 把日期格式转换为时间戳
getdate(); 获取日期/时间信息
checkdate(); 验证日期
比较时间的大小:先解析为时间戳,再进行比较。
date_default_timezone_set("Asia/Shanghai"); 设定时区
date.php
1 <?php 2 echo date('Y-m-d H:i:s'); 3 //date_default_timezone_set("America/Adak"); 4 echo "<br>"; 5 echo date('Y-m-d H:i:s');//当前系统时间 6 echo "<br>"; 7 echo time();//unix时间戳,从1970年1月1日开始的秒数 8 echo "<br>"; 9 echo microtime();//毫秒数 10 echo "<br>"; 11 echo date('Y-m-d',time()); 12 echo "<br>"; 13 echo date('N'); 14 echo date('l'); 15 echo date('z'); 16 echo "<br>"; 17 echo strtotime(date('Y-m-d H:i:s'));//把格式化后的时间转化为unix时间戳。 18 echo "<br>"; 19 echo strtotime(date('Y-m-d')); 20 echo "<br>"; 21 echo strtotime('2016-8-2'); 22 echo "<br>"; 23 echo date('Y-m-d', strtotime('2016-8-2'));//格式化,第一个参数格式化当前时间,若有第二个参数则格式化的是第二个参数的时间; 24 echo "<br>"; 25 echo date('Y-m-d',strtotime('-1 day'));//计算昨天日期 26 echo date('Y-m-d',strtotime('+1 day'));//计算明天日期 27 echo date('Y-m-d',strtotime('+1 week'));//计算下周日期 28 echo date('Y-m-d',strtotime('-1 day', strtotime('2016-8-1')));//计算昨天日期 29 echo "<br>"; 30 $date= getdate(); 31 echo'<pre>'; 32 var_dump($date); 33 echo "<br>"; 34 $date1= getdate(strtotime('2016-9-1'));//输出一个数组 35 var_dump($date1); 36 echo "<br>"; 37 var_dump(checkdate('6', '31', '2016'));//测试日期是否正确 38 echo "<br>"; 39 //setlocale(LC_ALL, 'chs'); 40 //echo "中国时间:"; 41 echo "<br>"; 42 echo mktime();//获取时间戳,一般不用这种方式
1 <?php 2 $startdate=strtotime("Saturday"); 3 echo $startdate; 4 echo '<br>'; 5 $enddate=strtotime("+6 weeks",$startdate); 6 echo $enddate; 7 echo '<br>'; 8 while ($startdate < $enddate) { 9 echo date("M d", $startdate),"<br>"; 10 $startdate = strtotime("+1 week", $startdate); 11 } 12 echo strtotime('1990-7-10'); //这是我的时间戳
date函数的组合形式:
1 <?php 2 //本周一 3 echo "本周一"; 4 echo date('Y-m-d',(time()-((date('w')==0?7:date('w'))-1)*24*3600)); //w为星期几的数字形式,这里0为周日 5 6 echo "<br>"; 7 //本周日 8 echo "本周日"; 9 echo date('Y-m-d',(time()+(7-(date('w')==0?7:date('w')))*24*3600)); //同样使用w,以现在与周日相关天数算 10 11 echo "<br>"; 12 //上周一 13 echo "上周一"; 14 echo date('Y-m-d',strtotime('-1 monday', time())); //无论今天几号,-1 monday为上一个有效周未 15 16 echo "<br>"; 17 //上周日 18 echo "上周日"; 19 echo date('Y-m-d',strtotime('-1 sunday', time())); //上一个有效周日,同样适用于其它星期 20 21 echo "<br>"; 22 //本月一号 23 echo "本月一号"; 24 echo date('Y-m-d',strtotime(date('Y-m', time()).'-01')); //直接以strtotime生成 25 26 echo "<br>"; 27 //本月最后一日 28 echo "本月最后一日"; 29 echo date('Y-m-d',strtotime(date('Y-m', time()).'-'.date('t', time()))); //t为当月天数,28至31天 30 31 echo "<br>"; 32 //上月一日 33 echo "上月一日"; 34 echo date('Y-m-d',strtotime('-1 month', strtotime(date('Y-m', time()).'-01 00:00:00'))); //本月一日直接strtotime上减一个月 35 36 echo "<br>"; 37 //上月最后一日 38 echo "上月最后一日"; 39 echo date('Y-m-d',strtotime(date('Y-m', time()).'-01 00:00:00')-86400); //本月一日减一天即是上月最后一日
浙公网安备 33010602011771号