PHP入门教程之日期与时间操作技巧总结(格式化,验证,获取,转换,计算等)
本文实例讲述了PHP日期与时间操作技巧。分享给大家供大家参考,具体如下:
Demo1.php
<?php //验证时间 //checkdate()1.月份2.日3.年 //checkdate()判断这个日期是否是合法的日期 //不合法的日期,试一试 if(checkdate(7,16,2010)){ echo'这个日期是合法有效的'; }else{ echo'这个日期是非法的。'; } ?>
Demo2.php
<?php //date--格式化一个本地时间/日期 //date(),彻底研究一下 //date()可以存放两个参数,第一参数是日期和时间的格式化,[第二参数是时间戳] //Y表示四位数的年份,y表示二位数的年份 //M表示英文的月份缩写,m表示阿拉伯数字的月份 //D表示英文下的星期几缩写,d表示阿拉伯数字的日 //第一个参数的格式化可以放一些无关紧要的字符串 //只要无关紧要的字符串不再format的目录里,就不会被识别 //echodate('现在的日期是:Y-m-d');//现在的日期是:2015-04-20 //时分秒=H表示24小时制的小时, //明明是19,为什么显示11点呢,东八区,差8个小时 //现在没有经过任何设置,所以时间在默认时区上 //echodate('现在的日期是:Y-m-dH:i:s'); //重点是年月日,时分秒 echodate('r'); echodate('现在的日期是:Y-m-dH:i:sa'); ?>
Demo3.php
<?php //取得当前的时间,返回一个数组 //"sec"-自Unix纪元起的秒数 //"usec"-微秒数 //"minuteswest"-格林威治向西的分钟数 //"dsttime"-夏令时修正的类型 //print_r(gettimeofday()); //第一数组的元素就是时间戳 //gettimeofday()就是取得的当前时间的时间戳 //$a=gettimeofday(); //sec取得当前时间的时间戳 //转换成人可以看得懂的时间 //第二个参数,对于本例来讲,放与不放,是一样的。 //echodate('Y-m-dH:i:s',$a['sec']); print_r(gettimeofday(0)); echogettimeofday(1); ?>
Demo4.php
<?php //将时间戳转换成人可以看的懂的时间 //date()函数的第二个参数就是时间戳 //如果第二个参数省略了,那么就返回当前时间 //如果第二个参数没有省略,那么就返回那个时间戳的时间 echodate('Y-m-dH:i:s',24554457865); ?>
Demo5.php
<?php //getdate()也可以转换时间戳 //print_r(getdate()); //Array([seconds]=>26[minutes]=>34[hours]=>10[mday]=>20[wday]=>1[mon]=>4 //[year]=>2015[yday]=>109[weekday]=>Monday[month]=>April[0]=>1429526066) $t=getdate(); echo$t['year']; //传递一个时间戳 print_r(getdate(1029526066)); ?>
Demo6.php
<?php //直接获取当前时间戳 //echotime();//1429526328 //这个time()可以调整时间 //大家可以发现time()很有用处,可以过去现在和将来 echodate('Y-m-dH:i:s',time()+60*60*8); ?>
Demo7.php
<?php //获取特定指定时间的时间戳 //这是当前的时间戳 //echotime(); //我要取得2008-08-0808:08:08 $beijing2008=mktime(8,8,8,8,8,2008); echodate('Y-m-dH:i:s',$beijing2008); ?>
Demo8.php
<?php //使用时间戳计算时间差 $now=time();//当前的时间戳 $wnow=mktime(0,0,0,8,16,2016); //两个时间戳相减可以得到差秒 echoround(($wnow-$now)/60/60,2).'相差这几个小时'; ?>
Demo9.php
<?php //将人可读的时间,字符串形式,转换成时间戳 $a=strtotime('2010-7-1615:15:15')-strtotime('2010-7-1615:14:15'); if($a>=60){ echo'请这位先生休息一会。'; }else{ echo$a; } ?>
Demo10.php
<?php //获取当前文件的修改时间戳 echodate('Y-m-dH:i:s',getlastmod()); ?>
Demo11.php
<?php //配置系统环境变量 echodate('Y-m-dH:i:s'); echo'<br/>'; //我开始设置时区 putenv('Tz=Asia/Shanghai'); echodate('Y-m-dH:i:s'); ?>
Demo12.php
<?php //putenv('Tz=Asia/Shanghai'); //获取当前时区 echodate_default_timezone_get(); echo'<br/>'; //开始配置默认时区 date_default_timezone_set('Asia/Shanghai'); echodate('Y-m-dH:i:s'); echo'<br/>'; echodate_default_timezone_get(); ?>
Demo13.php
<?php date_default_timezone_set('Asia/Shanghai'); //"tm_sec"-秒数 //"tm_min"-分钟数 //"tm_hour"-小时 //"tm_mday"-月份中的第几日 //"tm_mon"-年份中的第几个月,从0开始表示一月 //"tm_year"-年份,从1900开始 //"tm_wday"-星期中的第几天 //"tm_yday"-一年中的第几天 //"tm_isdst"-夏令时当前是否生效 print_r(localtime(time(),true)); //Array([tm_sec]=>37[tm_min]=>15[tm_hour]=>19 //[tm_mday]=>20[tm_mon]=>3[tm_year]=>115 //[tm_wday]=>1[tm_yday]=>109[tm_isdst]=>0) ?>
Demo14.php
<?php //返回时间戳和微秒数 //怎么计算页面运行加载时间 //页面打开的时候获取一个时间 //页面结束的时候获取一个时间 //用结束的时间减去打开的时间,那么就是运行时间 //list($a,$b)=explode('',microtime()); //echo$b; functionfn(){ list($a,$b)=explode('',microtime()); return$a+$b;//返回出精确的秒数 } //在页面打开的时候,获取一个时间 $start_time=fn(); for($i=0;$i<10000000;$i++){ // } //页面结束的时候,获取一个时间 $end_time=fn(); echoround(($end_time-$start_time),4); ?>
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php日期与时间用法总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。