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 相关文章推荐
让你的WINDOWS同时支持MYSQL4,MYSQL4.1,MYSQL5X
Dec 06 PHP
linux php mysql数据库备份实现代码
Mar 10 PHP
在PHP中利用wsdl创建标准webservice的实现代码
Dec 07 PHP
php常用ODBC函数集(详细)
Jun 24 PHP
getimagesize获取图片尺寸实例
Nov 15 PHP
php+ajax实现文章自动保存的方法
Dec 30 PHP
利用PHP如何实现Socket服务器
Sep 23 PHP
PHP人民币金额转大写实例代码
Oct 02 PHP
PHP定义字符串的四种方式详解
Feb 06 PHP
Laravel框架控制器,视图及模型操作图文详解
Dec 04 PHP
记Laravel调用Gin接口调用formData上传文件的实现方法
Dec 12 PHP
如何用Laravel包含你自己的帮助函数
May 27 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
WINDOWS服务器安装多套PHP的另类解决方案
2006/10/09 PHP
用PHP调用Oracle存储过程
2006/10/09 PHP
php中的实现trim函数代码
2007/03/19 PHP
PHP中for与foreach的区别分析
2011/03/09 PHP
ThinkPHP实现多数据库连接的解决方法
2014/07/01 PHP
ThinkPHP公共配置文件与各自项目中配置文件组合的方法
2014/11/24 PHP
PHP设计模式之观察者模式实例
2016/02/22 PHP
一个Action如何调用两个不同的方法
2014/05/22 Javascript
jQuery中not()方法用法实例
2015/01/06 Javascript
jQuery实现TAB风格的全国省份城市滑动切换效果代码
2015/08/24 Javascript
理解javascript闭包
2015/12/15 Javascript
Bootstrap3制作自己的导航栏
2016/05/12 Javascript
详解Angular.js中$http拦截器的介绍及使用
2017/07/04 Javascript
javascript修改浏览器title方法 JS动态修改浏览器标题
2017/11/30 Javascript
vue elementUI table表格数据 滚动懒加载的实现方法
2019/04/04 Javascript
详解vue beforeRouteEnter 异步获取数据给实例问题
2019/08/09 Javascript
Element-Ui组件 NavMenu 导航菜单的具体使用
2019/10/24 Javascript
修改vue源码实现动态路由缓存的方法
2020/01/21 Javascript
ES2020 已定稿,真实场景案例分析
2020/05/25 Javascript
python同时给两个收件人发送邮件的方法
2015/04/30 Python
Python的自动化部署模块Fabric的安装及使用指南
2016/01/19 Python
Python语言描述最大连续子序列和
2017/12/05 Python
python 脚本生成随机 字母 + 数字密码功能
2018/05/26 Python
Win10系统下安装labelme及json文件批量转化方法
2019/07/30 Python
Python Web程序搭建简单的Web服务器
2019/07/31 Python
基于MATLAB和Python实现MFCC特征参数提取
2019/08/13 Python
Python中pyecharts安装及安装失败的解决方法
2020/02/18 Python
详解PyQt5信号与槽的几种高级玩法
2020/03/24 Python
Python-for循环的内部机制
2020/06/12 Python
捷克汽车配件和工具销售网站:TorriaCars
2018/02/26 全球购物
澳大利亚头发和美容产品购物网站:OZ Hair & Beauty
2020/03/27 全球购物
应届本科生推荐信范文
2013/12/25 职场文书
微型企业创业投资计划书
2014/01/10 职场文书
人事文员岗位职责
2015/02/04 职场文书
2016年度优秀辅导员事迹材料
2016/02/26 职场文书
python爬虫框架feapde的使用简介
2021/04/20 Python