PHP常用日期加减计算方法实例
PHP常用日期加减计算方法实例
实例总结了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-131473609600
2016-09-12
2019-11-13
2016-09-131473609600
2016-09-12 -> 2066-09-12 相差: -17056 天
PHP常用日期加减计算方法实例的更多相关文章
- java基础篇 -- 常用的日期加减和日期格式化工具类
平时我们遇到日期的加减,感觉是相当麻烦的,以下是常用的日志加减的方法,包括日的加减.月的加减等,也包括了一些常用的日期格式化,这样在我们以后碰到日期加减的时候会省去很多麻烦,欢迎大神指正和吐槽: pa ...
- PHP中的日期加减方法示例
几乎所有从事程序开发的程序员都遇到时间处理问题,PHP开发也一样,幸运的是PHP提供了很多关于日期时间函数.只要经常使用这些函数,搭配使用,日期时间处理上就熟能生巧了. 今天要讲的这个例子,需求是这样 ...
- 【转载】 C#中日期类型DateTime的日期加减操作
在C#开发过程中,DateTime数据类型用于表示日期类型,可以通过DateTime.Now获取当前服务器时间,同时日期也可以像数字一样进行加减操作,如AddDay方法可以对日期进行加减几天的操作,A ...
- Delphi日期函数、日期加减
Delphi里有现成的函数可以实现日期加减,是在DateUtils单元里的. function IncYear(const AValue: TDateTime; const ANumberOfYear ...
- java 和 mysql 获取周 星期 的第一天 最后一天 或者 月的 日期(字符串转日期,日期转字符串,日期加减)
获取周的第一天,最后一天 System.out.println(getStartEndDate("2016-05-01", 1)); 获取星期的第一天和最后一天 System.ou ...
- js日期加减
先补充下基础知识: var myDate = new Date(); //myDate默认返回当前时间 myDate.getYear(); //获取当前年份(2位) myDate.getFullYea ...
- mysql日期加减
mysql日期加减一.MySQL 为日期增加一个时间间隔:date_add().1. 示例:set @dt = now();select date_add(@dt, interval 1 day); ...
- shell 日期加减
shell 日期加减运算 比如今日是2012-04-22 $ date -d "+1 day" +%Y-%m-%d 2012-04-23 $ date -d "- ...
- JS日期加减指定天数
JS中没有直接操作日期加减的方法,只能通过Date对象获取当前天数加减之后setDate,以此来达到操作日期的目的 JS中对指定日期加减指定天数,具体方法如下: function addDate(da ...
随机推荐
- Java SE之[静态成员/类成员]与[非静态成员/实例成员]【static】
定义 静态成员:又称类成员,使用static修饰符的方法和变量: 非静态成员:又称实例成员,未使用static修饰符的方法和变量. 结论 注:jdk1.8 测试源码 public class Main ...
- hibernate之一级缓存
缓存目的:提高效率. sql语句与数据库交互,返回数据组装成对象存入session缓存中.程序查询时,优先访问缓存中是否存在id相同对象. hibernate中session缓存(一级缓存)存在
- 用CSS实现加载的动画效果
用纯CSS实现加载的一些动态效果,可以把加载效果中的元素分成很多个小部分,每个部分都有动画,每个部分的动画再设置相应的延迟效果,这样,看起来就是连贯的加载动画效果.代码如下: 1.效果1 <di ...
- Rollup.js 实践
音乐分享: B.o.B Ft. Marko Penn - <Roll up> ——————————————————————————————————————————————————————— ...
- Linux 系统调用sysconf
1.前言 当前计算机都是多核的,linux2.6提供了进程绑定cpu功能,将进程指定到某个core上执行,方便管理进程.linux提供了sysconf系统调用可以获取系统的cpu个数和可用的cpu个数 ...
- Jace 上新建 Station 配置 笔记
1.Station站点的结构图 2.niagara 结构框架图 Niagara 系统的架构是围绕着“以组件(Component)为导向的编程”为核心设计的.组件(Component)是使用Java 编 ...
- web.xml 简记
web.xml (tomcat启动时读取的配置文件) 首页配置 <welcome-file-list>:index.jsp servlet配置(<servlet>和<se ...
- Linux基础-命令
命令格式:command [-options] [paramter] command: 命令名,相应功能英文单词或缩写 options: 选项,对命进行控制,也可省略 paramter:传送给命令的 ...
- 饮冰三年-人工智能-Python-27 Django Form组件
Django的Form主要具有一下几大功能: 生成HTML标签 验证用户数据(显示错误信息) HTML Form提交保留上次提交数据 初始化页面显示内容 后台逻辑(导包+建类) from django ...
- Mybaits入门使用
1.pom.xml配置信息 <dependencies> <dependency> <groupId>junit</groupId> <artif ...