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 相关文章推荐
Mysql数据库操作类( 1127版,提供源码下载 )
Dec 02 PHP
php下获取Discuz论坛登录用户名、用户组、用户ID等信息的实现代码
Dec 29 PHP
php中取得URL的根域名的代码
Mar 23 PHP
php实现zip压缩文件解压缩代码分享(简单易懂)
May 10 PHP
win7 64位系统 配置php最新版开发环境(php+Apache+mysql)
Aug 15 PHP
php实现excel中rank函数功能的方法
Jan 20 PHP
CentOS 安装 PHP5.5+Redis+XDebug+Nginx+MySQL全纪录
Mar 25 PHP
Yii框架表单模型和验证用法
May 20 PHP
php 输出json及显示json中的中文汉字详解及实例
Nov 09 PHP
php实现购物车产品删除功能(2)
Jul 23 PHP
PHP中递归的实现实例详解
Nov 14 PHP
PHP CURL中传递cookie的方法步骤
May 09 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基础教程(php入门基础教程)一些code代码
2013/01/06 PHP
解析php curl_setopt 函数的相关应用及介绍
2013/06/17 PHP
php调用c接口无错版介绍
2014/03/11 PHP
封装ThinkPHP的一个文件上传方法实例
2014/10/31 PHP
php统计数组元素个数的方法
2015/07/02 PHP
php异常处理捕获错误整理
2019/09/23 PHP
javascript来定义类的规范小结
2010/11/19 Javascript
基于jQuery实现图片的前进与后退功能
2013/04/24 Javascript
js setTimeout 常见问题小结
2013/08/13 Javascript
对于this和$(this)的个人理解
2013/09/08 Javascript
javascript实时显示北京时间的方法
2015/03/12 Javascript
js获取字符串字节数方法小结
2015/06/09 Javascript
JQuery菜单效果的两个实例讲解(3)
2015/09/17 Javascript
jQuery绑定事件on()与弹窗的简要概述
2016/04/27 Javascript
Javascript小技能总结(推荐)
2016/06/02 Javascript
angularjs实现的前端分页控件示例
2017/02/10 Javascript
ES6正则表达式扩展笔记
2017/07/25 Javascript
详解mpvue小程序中怎么引入iconfont字体图标
2018/10/01 Javascript
在vue中把含有html标签转为html渲染页面的实例
2019/10/28 Javascript
Python字符串格式化
2015/06/15 Python
Python HTTP客户端自定义Cookie实现实例
2017/04/28 Python
完美解决安装完tensorflow后pip无法使用的问题
2018/06/11 Python
Python的条件锁与事件共享详解
2019/09/12 Python
pytorch下大型数据集(大型图片)的导入方式
2020/01/08 Python
PyTorch加载预训练模型实例(pretrained)
2020/01/17 Python
TensorFlow命名空间和TensorBoard图节点实例
2020/01/23 Python
keras的backend 设置 tensorflow,theano操作
2020/06/30 Python
7 For All Mankind官网:美国加州洛杉矶的高级牛仔服装品牌
2018/12/20 全球购物
法国包包和行李箱销售网站:Bagage24.fr
2020/03/24 全球购物
期末自我鉴定
2014/01/23 职场文书
学校2014年度工作总结
2014/12/06 职场文书
2015年安全教育月活动总结
2015/03/26 职场文书
主持人大赛开场白
2015/05/29 职场文书
金正昆讲礼仪观后感
2015/06/11 职场文书
2016年优秀共产党员先进事迹材料
2016/02/29 职场文书
使用Nginx+Tomcat实现负载均衡的全过程
2022/05/30 Servers