PHP常用日期加减计算方法实例小结


Posted in PHP onJuly 31, 2018

本文实例总结了PHP常用日期加减计算方法。分享给大家供大家参考,具体如下:

PHP 标准的日期格式

date("Y-m-d H:i:s");

PHP 简单的日期加减计算

<?php
  date_default_timezone_set('PRC'); //默认时区
  echo "今天:",date("Y-m-d",time()),"\n";
  echo "今天:",date("Y-m-d",strtotime("18 june 2008")),"\n";
  echo "昨天:",date("Y-m-d",strtotime("-1 day")),"\n";
  echo "明天:",date("Y-m-d",strtotime("+1 day")),"\n";
  echo "一周后:",date("Y-m-d",strtotime("+1 week")),"\n";
  echo "一周零两天四小时两秒后:",date("Y-m-d G:H:s",strtotime("+1 week 2 days 4 hours 2 seconds")), "\n";
  echo "下个星期四:",date("Y-m-d",strtotime("next Thursday")),"\n";
  echo "上个周一:".date("Y-m-d",strtotime("last Monday"))."\n";
  echo "一个月前:".date("Y-m-d",strtotime("last month"))."\n";
  echo "一个月后:".date("Y-m-d",strtotime("+1 month"))."\n";
  echo "十年后:".date("Y-m-d",strtotime("+10 year"))."\n";
?>

运行结果:

今天:2018-07-31
今天:2008-06-18
昨天:2018-07-30
明天:2018-08-01
一周后:2018-08-07
一周零两天四小时两秒后:2018-08-09 15:15:40
下个星期四:2018-08-02
上个周一:2018-07-30
一个月前:2018-07-01
一个月后:2018-08-31
十年后:2028-07-31

PHP 进阶的日期加减计算

<?php
  // 默认时区
  date_default_timezone_set('PRC');
  echo "今天: ", date('Y-m-d H:i:s'), "\n";    // 输出当前时间
  echo "明天: ", date('Y-m-d H:i:s', strtotime('+1 day')), "\n";    // 输出明天时间
  //strtotime 可以接受第二个参数,类型timestamp为指定日期
  echo date('Y-m-d H:i:s', strtotime ("+1 day", strtotime('2017-11-11'))), "\n";
  // 这里+1 day 可以修改参数1为任何想需要的数
  // day也可以改成year(年)month(月)hour(小时)minute(分)second(秒)
  echo date('Y-m-d H:i:s', strtotime("+1 day +1 hour +1 minute")), "\n";
?>

运行结果:

今天: 2018-07-31 11:37:11
明天: 2018-08-01 11:37:11
2017-11-12 00:00:00
2018-08-01 12:38:11

PHP 高级的计算日期时间差

<?php
  // 默认时区
  date_default_timezone_set('PRC');
  echo date("Y-m-d H:i:s"), "\n";
  // 日期天数相加函数
  echo date('Y-m-d', strtotime('+1 day', strtotime('2016-09-12'))), "\n\n";
  echo strtotime('2016-09-12'), "\n";
  echo date("Y-m-d", '1473609600'), "\n";
  echo date("Y-m-d", '1573609600'), "\n";
  // 日期天数相加函数
  $d = "2016-09-12 10:12:20";
  echo date("Y-m-d", strtotime("$d  +1  day")), "\n\n";
  // 把日期转换成时间截
  function date2time($d){
    $year=((int)substr("$d",0,4)); //取得年份
    $month=((int)substr("$d",5,2)); //取得月份
    $day=((int)substr("$d",8,2));  //取得几号
    return mktime(0,0,0,$month,$day,$year);
  }
  echo date2time("2016-09-12"), "\n\n";
  $date_1="2066-09-12";
  $date_2="2016-09-12";
  $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 "$date_2 -> $date_1 相差: $Days 天", "\n";
?>

运行结果:

2018-07-31 11:37:39
2016-09-13

1473609600
2016-09-12
2019-11-13
2016-09-13

1473609600

2016-09-12 -> 2066-09-12 相差: -17056 天

PHP 相关文章推荐
ip签名探针
Oct 09 PHP
10条PHP高级技巧[修正版]
Aug 02 PHP
php数组一对一替换实现代码
Aug 31 PHP
php中curl使用指南
Feb 05 PHP
php创建无限级树型菜单
Nov 05 PHP
PHP实现登陆表单提交CSRF及验证码
Jan 24 PHP
微信公众号开发之通过接口删除菜单
Feb 20 PHP
PHP实现的DES加密解密封装类完整实例
Apr 29 PHP
PHP 中使用explode()函数切割字符串为数组的示例
May 06 PHP
PHP生成加减算法方式的验证码实例
Mar 12 PHP
laravel框架添加数据,显示数据,返回成功值的方法
Oct 11 PHP
Laravel框架处理用户的请求操作详解
Dec 20 PHP
ThinkPHP5.0多个文件上传后找不到临时文件的修改方法
Jul 30 #PHP
PHP笛卡尔积实现算法示例
Jul 30 #PHP
作为PHP程序员你要知道的另外一种日志
Jul 30 #PHP
详解Laravel5.6 Passport实现Api接口认证
Jul 27 #PHP
PHP实现的DES加密解密类定义与用法示例
Nov 02 #PHP
详解laravel安装使用Passport(Api认证)
Jul 27 #PHP
Ubuntu彻底删除PHP7.0的方法
Jul 27 #PHP
You might like
在php MYSQL中插入当前时间
2008/04/06 PHP
详解WordPress中简码格式标签编写的基本方法
2015/12/22 PHP
利用WebBrowser彻底解决Web打印问题(包括后台打印)
2009/06/22 Javascript
javascript 获取模态窗口的滚动位置代码
2013/08/06 Javascript
js单例模式详解实例
2013/11/21 Javascript
关于js内存泄露的一个好例子
2013/12/09 Javascript
为什么JavaScript没有块级作用域
2016/05/22 Javascript
浅谈angular懒加载的一些坑
2016/08/20 Javascript
Bootstrap框架的学习教程详解(二)
2016/10/18 Javascript
解析NodeJS异步I/O的实现
2017/04/13 NodeJs
vue 和vue-touch 实现移动端左右导航效果(仿京东移动站导航)
2017/04/22 Javascript
解决Vue不能检测数组或对象变动的问题
2018/02/24 Javascript
详解JS函数stack size计算方法
2018/06/18 Javascript
VUE 3D轮播图封装实现方法
2018/07/03 Javascript
Vue组件通信的几种实现方法
2019/04/25 Javascript
node.js通过Sequelize 连接MySQL的方法
2020/12/28 Javascript
小结Python用fork来创建子进程注意事项
2014/07/03 Python
python中的变量如何开辟内存
2018/06/26 Python
python使用插值法画出平滑曲线
2018/12/15 Python
python实现图片九宫格分割
2021/03/07 Python
Python制作词云图代码实例
2019/09/09 Python
python使用matplotlib绘制雷达图
2019/10/18 Python
wxPython窗体拆分布局基础组件
2019/11/19 Python
CSS3样式linear-gradient的使用实例
2017/01/16 HTML / CSS
HTML5对手机页面长按会粘贴复制禁用的解决方法
2016/07/19 HTML / CSS
HTML5 canvas基本绘图之绘制五角星
2016/06/27 HTML / CSS
Steve Madden官网:美国鞋类品牌
2017/01/29 全球购物
英国办公家具网站:Furniture At Work
2019/10/07 全球购物
施华洛世奇新加坡官网:SWAROVSKI新加坡
2020/10/06 全球购物
大学秋游活动方案
2014/02/11 职场文书
环保建议书100字
2014/05/14 职场文书
银行求职自荐信范文
2015/03/04 职场文书
乡镇安全生产月活动总结
2015/05/08 职场文书
离婚案件原告代理词
2015/05/23 职场文书
员工给公司的建议书
2019/06/24 职场文书
Vertica集成Apache Hudi重磅使用指南
2022/03/31 Servers