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 相关文章推荐
如何开发一个虚拟域名系统
Oct 09 PHP
php面向对象全攻略 (十六) 对象的串行化
Sep 30 PHP
php中比较简单的导入phpmyadmin生成的sql文件的方法
Jun 28 PHP
基于AppServ,XAMPP,WAMP配置php.ini去掉警告信息(NOTICE)的方法详解
May 07 PHP
一个简洁实用的PHP缓存类完整实例
Jul 26 PHP
PHP实现将HTML5中Canvas图像保存到服务器的方法
Nov 28 PHP
php调用KyotoTycoon简单实例
Apr 02 PHP
Laravel 5 框架入门(四)完结篇
Apr 09 PHP
php使用for语句输出三角形的方法
Jun 09 PHP
讲解WordPress开发中一些常用的debug技巧
Dec 18 PHP
浅析php设计模式之数据对象映射模式
Mar 03 PHP
PHP类的自动加载机制实现方法分析
Jan 10 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 开发的 8 个技巧
2006/10/09 PHP
PHP SplObjectStorage使用实例
2015/05/12 PHP
PHP操作Postgresql封装类与应用完整实例
2018/04/24 PHP
js 全兼容可高亮二级缓冲折叠菜单
2010/06/04 Javascript
让元素在网页中可拖动示例代码
2013/08/13 Javascript
javascript实现的固定位置悬浮窗口实例
2015/04/30 Javascript
基于javascript显示当前时间以及倒计时功能
2016/03/18 Javascript
微信小程序 wx.request(OBJECT)发起请求详解
2016/10/13 Javascript
原生js图片轮播效果实现代码
2016/10/19 Javascript
Vue监听数据对象变化源码
2017/03/09 Javascript
socket.io学习教程之基本应用(二)
2017/04/29 Javascript
利用纯js + transition动画实现移动端web轮播图详解
2017/09/10 Javascript
JQuery模拟实现网页中自定义鼠标右键菜单功能
2018/11/14 jQuery
vue点击Dashboard不同内容 跳转到同一表格的实例
2020/11/13 Javascript
Python中random模块生成随机数详解
2016/03/10 Python
python实现下载文件的三种方法
2017/02/09 Python
python利用urllib和urllib2访问http的GET/POST详解
2017/09/27 Python
Python实现霍夫圆和椭圆变换代码详解
2018/01/12 Python
Python3使用pandas模块读写excel操作示例
2018/07/03 Python
python3.6使用urllib完成下载的实例
2018/12/19 Python
OpenCV-Python 摄像头实时检测人脸代码实例
2019/04/30 Python
美国电子产品购物网站:BuyDig.com
2020/06/17 全球购物
委托与事件是什么关系?为什么要使用委托
2014/04/18 面试题
厨房工作人员岗位职责
2013/11/15 职场文书
成功的餐厅经营创业计划书
2014/01/15 职场文书
小学作文评语大全
2014/04/21 职场文书
小学生母亲节演讲稿
2014/05/07 职场文书
公司周年庆典策划方案
2014/05/17 职场文书
搞笑车尾标语
2014/06/23 职场文书
委托书如何写
2014/08/30 职场文书
2014年群众路线教育实践活动整改措施
2014/09/24 职场文书
中学生勤俭节约倡议书
2015/04/29 职场文书
话题作文之呼唤
2019/12/18 职场文书
超详细教你怎么升级Mysql的版本
2021/05/19 MySQL
JavaScript实现两个数组的交集
2022/03/25 Javascript
JavaScript中10个Reduce常用场景技巧
2022/06/21 Javascript