PHP时间处理类操作示例


Posted in PHP onSeptember 05, 2018

本文实例讲述了PHP时间处理类操作。分享给大家供大家参考,具体如下:

php中的几个时间处理类:DateTime,DateTimeZone,DateInterval,DatePeriod。

  • DateTime :时间类
  • DateTimeZone:时区内
  • DateInterval:表示一段时间间隔,它是时间对象做加减法的单位。
  • DatePeriod:表示一段时间集合。结合DateInterval可对集合内的时间遍历处理。

下面是这几个类的具体使用例子:

<?php
function showTimeObj($msg,$timeObj)
{
  //使用预定义的格式来转换时间字符串
  if ($msg!=NULL)
  {
    echo $msg.":";
    echo "<br>".$timeObj->format(DATE_W3C)."<br>";
  }
  else
  {
    echo $timeObj->format(DATE_ATOM)."<br>";
  }
}
try
{
  //设置时区
  $timezones = new DateTimeZone('Asia/Shanghai');
  //获取当前时间
  $timeObj=new DateTime("now",$timezones);
}
catch (Exception $e)
{
  echo $e->getMessage();
}
//输出的+08:00代表东八区、若把时区设为'Asia/Tokyo',则为+09:00
showTimeObj('current time',$timeObj);
echo "<br>"."<br>";
echo "use DateInterval object to add date time".":"."<br>";
//加上一天(P=period,必备)
$timeObj->add(new DateInterval('P1D'));
showTimeObj('current time + 1 day',$timeObj);
//加上一小时(T=time,可选)
$timeObj->add(new DateInterval('P0DT1H'));
showTimeObj('current time + 1 day & 1hour',$timeObj);
echo "<br>"."<br>";
echo "use DatePeriod to process time range like a iterator".":"."<br>";
//DatePeriod: 迭代处理区间内的日期
$interval= new DateInterval('P0DT2H');
$start = new DateTime('2018-08-08',$timezones);
$end = new DateTime('2018-08-09',$timezones);
$timeRange = new DatePeriod($start,$interval,$end);
foreach ($timeRange as $hour)
{
  showTimeObj(NULL,$hour);
}
?>

上述代码运行结果:

current time:
2018-09-04T15:23:46+08:00

use DateInterval object to add date time:
current time + 1 day:
2018-09-05T15:23:46+08:00
current time + 1 day & 1hour:
2018-09-05T16:23:46+08:00

use DatePeriod to process time range like a iterator:
2018-08-08T00:00:00+08:00
2018-08-08T02:00:00+08:00
2018-08-08T04:00:00+08:00
2018-08-08T06:00:00+08:00
2018-08-08T08:00:00+08:00
2018-08-08T10:00:00+08:00
2018-08-08T12:00:00+08:00
2018-08-08T14:00:00+08:00
2018-08-08T16:00:00+08:00
2018-08-08T18:00:00+08:00
2018-08-08T20:00:00+08:00
2018-08-08T22:00:00+08:00

PHP 相关文章推荐
php mysql索引问题
Jun 07 PHP
php AJAX实例根据邮编自动完成地址信息
Nov 23 PHP
用PHP为SHOPEX增加日志功能代码
Jul 02 PHP
浏览器关闭后,能继续执行的php函数(ignore_user_abort)
Aug 01 PHP
php结合正则获取字符串中数字
Jun 19 PHP
yii2.0实现创建简单widgets示例
Jul 18 PHP
简单的自定义php模板引擎
Aug 26 PHP
mac系统下为 php 添加 pcntl 扩展
Aug 28 PHP
php加密解密字符串示例
Oct 13 PHP
PHP实现链式操作的三种方法详解
Nov 16 PHP
php empty 函数判断结果为空但实际值却为非空的原因解析
May 28 PHP
PHP正则之正向预查与反向预查讲解与实例
Apr 06 PHP
PHP命名空间与自动加载类详解
Sep 04 #PHP
ThinkPHP框架实现定时执行任务的两种方法分析
Sep 04 #PHP
php 后端实现JWT认证方法示例
Sep 04 #PHP
PHP利用Mysql锁解决高并发的方法
Sep 04 #PHP
TP5(thinkPHP5)框架基于ajax与后台数据交互操作简单示例
Sep 03 #PHP
PHP实现的AES双向加密解密功能示例【128位】
Sep 03 #PHP
PHP实现的日历功能示例
Sep 01 #PHP
You might like
PHP5中Cookie与 Session使用详解
2013/04/30 PHP
PHP Reflection API详解
2015/05/12 PHP
PHP使用GD库输出汉字的方法【测试可用】
2016/11/10 PHP
通过身份证号得到出生日期和性别的js代码
2009/11/23 Javascript
apycom出品的jQuery精美菜单破解方法
2011/02/18 Javascript
jQuery拖动图片删除示例
2013/05/10 Javascript
jQuery EasyUI datagrid实现本地分页的方法
2015/02/13 Javascript
常用的JavaScript模板引擎介绍
2015/02/28 Javascript
jquery+CSS实现的多级竖向展开树形TRee菜单效果
2015/08/24 Javascript
javascript每日必学之基础入门
2016/02/16 Javascript
利用jQuery.Validate异步验证用户名是否存在(推荐)
2016/12/09 Javascript
浅谈js中function的参数默认值
2017/02/20 Javascript
node.js(express)中使用Jcrop进行图片剪切上传功能
2017/04/21 Javascript
基于vue的换肤功能的示例代码
2017/10/10 Javascript
Three.js基础学习教程
2017/11/16 Javascript
Vue开发之封装上传文件组件与用法示例
2019/04/25 Javascript
如何从头实现一个node.js的koa框架
2019/06/17 Javascript
详解为什么Vue中不要用index作为key(diff算法)
2020/04/04 Javascript
浅谈vue中document.getElementById()拿到的是原值的问题
2020/07/26 Javascript
使用python实现扫描端口示例
2014/03/29 Python
Python列表append和+的区别浅析
2015/02/02 Python
Python中defaultdict与lambda表达式用法实例小结
2018/04/09 Python
python写入已存在的excel数据实例
2018/05/03 Python
python保存字典和读取字典的实例代码
2019/07/07 Python
python redis连接 有序集合去重的代码
2019/08/04 Python
django 做 migrate 时 表已存在的处理方法
2019/08/31 Python
windows 10 设定计划任务自动执行 python 脚本的方法
2019/09/11 Python
如何在Django中使用聚合的实现示例
2020/03/23 Python
jupyter notebook 添加kernel permission denied的操作
2020/04/21 Python
Maje德国官网:法国女性成衣品牌
2017/02/10 全球购物
亚洲最大的眼镜批发商和零售商之一:Glasseslit
2018/10/08 全球购物
洛佩桑酒店官方网站:Lopesan Hotels
2019/04/15 全球购物
工商治理实习生的自我评价
2014/01/15 职场文书
个人贷款承诺书
2014/03/28 职场文书
初中班级口号
2014/06/09 职场文书
南极大冒险观后感
2015/06/05 职场文书