A-A+
PHP日期时间函数的总结
PHP日期时间函数在PHP应用中是最重要的一环,几乎所有的网站上面都应用着PHP的日期函数,在我们上传的最新新闻中,需要有日期时间,在发微博时,显示日期时间,几乎无所不在,怎样掌握好PHP的日期时间函数呢,下面是一个关于PHP日期时间函数的总结。。可以进行参考一下。
<?php echo "<b>个人总结的有关日期和时间的函数</b><br/>"; echo "<br/>"; echo "1********************************1"; echo "<br/>"; echo date("Y-m-d jS H:i:s",time())."<br>"; $k3=time(); echo $k3; echo "<br/>"; //date()主要是对日期时间进行格式化,返回一个字符串,以方 便存储,参数较多,要参考手册或者参看date.php文件 echo "<br/>"; echo "2********************************2"; echo "<br/>"; $k=strtotime("now"); echo $k; echo "<br/>"; echo date("Y-m-d jS H:i:s",$k)."<br>"; //strtotime()将英文日期转成UNIX时间戳 echo "<br/>"; echo "3********************************3"; echo "<br>"; $today=getdate(); print_r($today); echo "<br>"; echo $today[year]; echo "<br>"; echo $today[year]-1; echo "<br>"; echo $today[0]; echo "<br>"; echo $today; //getdate() 获取日期时间信息的函数 返回的结果是数组,有不明白的可 参看 date.php echo "<br/><br/>"; echo "4********************************4"; echo "<br>"; echo date("Y-m-d H:i:s",mktime())."<br>"; $k4=mktime(); echo $k4; echo "<br/><br/><br/><br/>"; //mktime() 获取本地化时间戳的函数 echo "实例<br/>"; echo "例1,明天的时间戳和明天的日期<br/>"; echo strtotime("+1 day"), "\n"; $k5=strtotime("+1 day"); $k6=date("M-d-Y jS H:i:s",$k5); echo $k6; //strtotime -- 将任何英文文本的日期时间描述解析为 Unix 时间 echo "<br/><br/>"; echo "例2,昨天的日期和时间<br/>"; date_default_timezone_set("PRC"); //设置时间函数为北京时间 $k=strtotime("-1 day"); $kk=date("M-d-Y jS H:i:s",$k); echo $kk; echo "<br/>"; echo "年月日表示:<br/>"; $k_year=date("Y",$k); $k_month=date("m",$k); $k_day=date("d",$k); $k_time=date("H:i:s",$k); echo $k_year."年".$k_month."月".$k_day."日".$k_time; ?>
<?php $today=getdate(); $todayt=gettimeofday(); //echo $taday; 只能输出array,在我这台电脑上是一片空白,说明 是一个数组,可以用print_r()来查数组里的内容 print_r($today); echo "<br>"; print_r("今天是一年中的第".$today[yday]."天"); echo "<br>"; print_r($todayt); /* Array ( [seconds] => 42 [minutes] => 51 [hours] => 2 [mday ] => 16 [wday] => 2 [mon] => 12 [year] => 2008 [yday] => 3 50 [weekday] => Tuesday [month] => December [0] => 1229395902 ) 返回的结果中scconds表示秒数 minutes表示分钟数 hours小时(格林威治时间,和我们的时间相差8小时,即 结加8等于我们的时间) mday月份中第几天 wday一周中的第几天 mon月份 year年份 yday一年中的第多少天 weekday星期的完整表示 month月份的完整表示 0代表从1970-1-1到现在的总秒数 */ echo "<br>"; echo date("\N\o\w \i\s jS \d\a\y");//我错在1少加了双引号;2j后 面的S要写成大写 echo "<br>"; echo date("Y-m-d jS H:i:s",time())."<br>"; echo mktime(0,0,0,12,15,2008)."<br>";//返回一个本地化时间戳的函 数,结果是一个unix的时间戳,也就是以格林威治时间算起 echo mktime(0,0,0,12,16,2008)."<br>"; echo date("M-d-Y",mktime(0,0,0,date("m")-1,date("d"),dat e("y")))."<br>";//上个月的今天 echo date("M-d-Y",mktime(0,0,0,date("m"),date("d"),dat e("y")+1))."<br>";//明年的今天 $tomorrow = mktime(0, 0, 0, date("m") , date("d")+1, da te("Y")); echo $tomorrow;//这是从php中文手册上看到的一个例子 //echo date_default_timezone_get(); date_default_timezone_set("PRC"); //设置时区为中国北京标准时间或者是在php.ini中修改date.timezon e值:date.timezone=Etc/GMT+8 echo "<br>"; echo date("Y-m-d jS H:i:s",time())."<br>"; //strtime() echo date("Y-m-d H:i:s",strtotime("today"))."<br>"; echo date("Y-m-d H:i:s",strtotime("2 weeks ago"))."<br>"; echo date("Y-m-d H:i:s",strtotime("next Friday"))."<br>"; echo strtotime("now"), "\n"; //来自php中文手册 echo strtotime("10 September 2000"), "\n"; echo strtotime("+1 day"), "\n"; echo strtotime("+1 week"), "\n"; echo strtotime("+1 week 2 days 4 hours 2 seconds"), "\n"; echo strtotime("next Thursday"), "\n"; echo strtotime("last Monday"), "\n"; ?>
<?php echo "当前时间戳是".time()."秒"; ?>
<?php $y=2008;//这个加不加引号都可以,原例子是加了引号的 $m="4";//这个加不加引号都可以,原例子是加了引号的 $d="31";//这个日期格式错误是错在4月没有31日,我后来复习时没有看出来是错 在哪里了 echo "<br>"; echo "{$y}年{$m}月{$d}日"; if(checkdate($m,$d,$y)){ /* 1我错在checkdate({$y}年{$m}月{$d}日 2我错在if(checkdate({$m}{$d}{$y})) 3我错在if(checkdate({$m},{$d},{$y})) 4注意一定要按月日年的顺序 */ echo "你的日期格式正确"; }else{ echo "你的日期格式错误"; } echo "<br>"; echo "<br>"; //以上结果再变一种写法为: echo "{$y}年{$m}月{$d}日"; if(!checkdate($m,$d,$y)){//否定后下面的输出也要换一下 echo "你的日期格式错误"; }else{ echo "你的日期格式正确"; } ?>