PHP基础笔记【4】时间处理

原创
2017/04/03 14:29
阅读数 55
一、php系统的时区设置
       更改PHP语言中的时区设置有如下两种方法
          (1)修改php.ini文件中的设置,找打[data]下的;date.timezone = 选项,去掉前面的引号,修改为:date.timezone = PRC(PRC为中华人名共和国时区),然后重启Apache。
          (2)在应用程序中,需在使用时间日期函数前添加如下函数
               date_default_timezone_set(timezone);

              echo "UTC时间:".date("Y-m-d H:i:s")."<br>";
              date_default_timezone_set("PRC");
              echo "北京时间:".date("Y-m-d H:i:s")."<br>";
              echo "当前时区:".date_default_timezone_get()."<br>";
              运行结果为:
              UTC时间:2016-03-26 07:19:57
              北京时间:2016-03-26 15:19:57
              当前时区:PRC

二、时间处理
      1、time()  获取当前时间
      2、date() 格式化时间戳
      3、strtotime() 日期转化为时间戳
     4、mktime() 把一个时间转为时间戳
     5、getdate(int timestamp) 获取日期信息
     6、checkdate()  检查年月日的有效性
     
      2.1. 日期的加减
                 <?php
                   echo "今天:",date('Y-m-d H:i:s'),"<br>";
                   echo "明天:",date('Y-m-d H:i:s',strtotime('+1 day'));
                 ?>
              上一行输出当前时间,下一行输出明天时间
              这里+1 day
              可以修改参数1为任何想需要的数  day也可以改成year(年),month(月),hour(小时),minute(分),second(秒)
             如
               date('Y-m-d H:i:s',strtotime("+1 day +1 hour +1 minute");
               可以随便自由组合,以达到任意输出时间的目的
               注:该方法之针对1970年以后试用,也就是时间戳的适用范围。
               php 常用日期相函数[日期加减,两日期之差,日期转换时间截]
             
             echo "一周后:".date("Y-m-d",strtotime("+1 week")). "<br>";
             echo "一周零两天四小时两秒后:".date("Y-m-d G:H:s",strtotime("+1 week 2 days 4 hours 2 seconds")). "<br>";
             echo "下个星期四:".date("Y-m-d",strtotime("next Thursday")). "<br>";
             echo "上个周一:".date("Y-m-d",strtotime("last Monday"))."<br>";
             echo "一个月前:".date("Y-m-d",strtotime("last month"))."<br>";
             echo "一个月后:".date("Y-m-d",strtotime("+1 month"))."<br>";
             echo "十年后:".date("Y-m-d",strtotime("+10 year"))."<br>";
 
        2.2.1.获取星期几
                 $weekarray=array("日","一","二","三","四","五","六");
                 echo "星期".$weekarray[date("w")];
        2.2.2获取指定日期的星期几
                 $weekarray=array("日","一","二","三","四","五","六");
                 echo "星期".$weekarray[date("w",strtotime("2011-11-11"))];

三、实例:
       1.下面函数计算两日期之差
                 $Date_1="2009-07-08";
                 echo $Date_1+1;
                 $Date_2="2009-06-08";
                 $Date_List_a1=explode("-",$Date_1);
                 $Date_List_a2=explode("-",$Date_2);
                 $d1=mktime(0,0,0,$Date_List_a1[1],$Date_List_a1[2],$Date_List_a1[0]);
                 $d2=mktime(0,0,0,$Date_List_a2[1],$Date_List_a2[2],$Date_List_a2[0]);
                $Days=round(($d1-$d2)/3600/24);
               echo "两日期之前相差有$Days 天";
展开阅读全文
加载中

作者的其它热门文章

打赏
0
0 收藏
分享
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部