时间函数是PHP里面的日常函数,时间的默认时期,今天、昨天、明天 、上一周、下一周,本周开始时间和结束时间;本月开始时间结束时间;上月开始时间结束时间,指定日期的周一和周日等等方法。

date_default_timezone_set('PRC'); //默认时区
//当前的时间增加5天
$date1 = "2018-12-21";
echo date('Y-m-d',strtotime("$date1 +5 day")); //输出结果:2018-12-26
//相应地,要增加月,年,将day改成month或year即可
//+++ 今天、昨天、明天 、上一周、下一周 +++++++++
echo "今天:",date("Y-m-d",time()),"<hr>";
echo "昨天:",date("Y-m-d",strtotime("-1 day")), "<hr>";
echo "明天:",date("Y-m-d",strtotime("+1 day")), "<hr>";
echo "一周后:",date("Y-m-d",strtotime("+1 week")), "<hr>";
echo "一周零两天四小时两秒后:",date("Y-m-d G:H:s",strtotime("+1 week 2 days 4 hours 2 seconds")), "<hr>";
echo "下个星期四:",date("Y-m-d",strtotime("next Thursday")), "<hr>";
echo "上个周一:".date("Y-m-d",strtotime("last Monday"))."<hr>";
echo "一个月前:".date("Y-m-d",strtotime("last month"))."<hr>";
echo "一个月后:".date("Y-m-d",strtotime("+1 month"))."<hr>";
echo "十年后:".date("Y-m-d",strtotime("+10 year"))."<hr>";

运行结果:

2018-12-26今天:2018-12-21
--------------------------------------------------------------------------------
昨天:2018-12-20
--------------------------------------------------------------------------------
明天:2018-12-22
--------------------------------------------------------------------------------
一周后:2018-12-28
--------------------------------------------------------------------------------
一周零两天四小时两秒后:2018-12-30 15:15:46
--------------------------------------------------------------------------------
下个星期四:2018-12-27
--------------------------------------------------------------------------------
上个周一:2018-12-17
--------------------------------------------------------------------------------
一个月前:2018-11-21
--------------------------------------------------------------------------------
一个月后:2019-01-21
--------------------------------------------------------------------------------
十年后:2028-12-21
--------------------------------------------------------------------------------

php 本周开始时间和结束时间;本月开始时间结束时间;上月开始时间结束时间

date_default_timezone_set('PRC'); //默认时区
/**
* 功能:取得给定日期所在周的开始日期和结束日期
* 参数:$gdate 日期,默认为当天,格式:YYYY-MM-DD
* $first 一周以星期一还是星期天开始,0为星期天,1为星期一
* 返回:数组array("开始日期", "结束日期");
*
*/
function aweek($gdate = "", $first = 0){if(!$gdate) $gdate = date("Y-m-d");$w = date("w", strtotime($gdate));//取得一周的第几天,星期天开始0-6$dn = $w ? $w - $first : 6;//要减去的天数//本周开始日期$st = date("Y-m-d", strtotime("$gdate -".$dn." days"));//本周结束日期$en = date("Y-m-d", strtotime("$st +6 days"));//上周开始日期$last_st = date('Y-m-d',strtotime("$st - 7 days"));//上周结束日期$last_en = date('Y-m-d',strtotime("$st - 1 days"));return array($st, $en,$last_st,$last_en);//返回开始和结束日期
}
echo implode("|", aweek("", 1)).'<br />';
//echo date("Y-m-d",strtotime("time()"));
echo '本周第一天(星期日为一周开始):'.date('Y-m-d', time()-86400*date('w')).'<hr>';
echo '本周第一天(星期一为一周开始):'.date('Y-m-d', time()-86400*date('w')+(date('w')>0?86400:-6*86400)).'<hr>';
echo '本月第一天:'.date('Y-m-d', mktime(0,0,0,date('m'),1,date('Y'))).'<hr>';
echo '本月最后一天:'.date('Y-m-d', mktime(0,0,0,date('m'),date('t'),date('Y'))).'<hr>';
//上个月的开始日期
$m = date('Y-m-d', mktime(0,0,0,date('m')-1,1,date('Y')));
//上个月共多少天
$t = date('t',strtotime("$m"));
echo '上月第一天:'.date('Y-m-d', mktime(0,0,0,date('m')-1,1,date('Y'))).'<hr>';
echo '上月最后一天:'.date('Y-m-d', mktime(0,0,0,date('m')-1,$t,date('Y'))).'<hr>';

运行结果:

2018-12-17|2018-12-23|2018-12-10|2018-12-16
本周第一天(星期日为一周开始):2018-12-16
--------------------------------------------------------------------------------
本周第一天(星期一为一周开始):2018-12-17
--------------------------------------------------------------------------------
本月第一天:2018-12-01
--------------------------------------------------------------------------------
本月最后一天:2018-12-31
--------------------------------------------------------------------------------
上月第一天:2018-11-01
--------------------------------------------------------------------------------
上月最后一天:2018-11-30
--------------------------------------------------------------------------------

转载于:https://www.cnblogs.com/weqqtk/p/10167301.html

PHP时间日期增减操作示例【date strtotime实现加一天、加一月等操作】相关推荐

  1. SimpleDateFormat时间日期格式化,时间日期类使用示例

    Date d1 = new Date();// 如果没有参数 ,则为当前时间System.out.println(d1);// 创建一个日期格式对象DateFormat df = new Simple ...

  2. JDK8新特性(五):JDK8时间日期API

    本文目录: 前言 1.旧版日期时间API存在的问题 2.新日期时间 API 介绍 3.用法介绍 1.JDK8 日期和时间类 2.JDK8 日期时间格式化与解析 3.JDK8 Instant 类 4.J ...

  3. 最好用的 12 款 Vue Timepicker 时间日期选择器测评推荐 - 卡拉云

    本文首发:<最好用的 12 款 Vue Timepicker 时间日期选择器测评推荐 - 卡拉云> Vue 时间日期选择器(date-timepicker)组件在使用 Vue 框架开发中使 ...

  4. java时间,日期,毫秒值,String的相互转换总结

    java时间日期的各种转换总结以及应用实例 由于工作中经常要用到时间,日期,以及当前时间的毫秒值等 很多时候涉及到了它们之间的相互转换,今天就好好的总结一下. 首先基本介绍一下java中有关时间,日期 ...

  5. mysql 日期格式化 yyyymmdd_mysql中时间日期格式化

    这里是一个使用日期函数的例子.下面的查询选择了所有记录,其date_col的值是在最后30天以内: mysql> SELECT something FROM table WHERE TO_DAY ...

  6. mysql日期格式化 yyyymmdd_mysql中时间日期格式化

    这里是一个使用日期函数的例子.下面的查询选择了所有记录,其date_col的值是在最后30天以内: DATE_FORMAT(FROM_UNIXTIME('1997-10-04 22:23:00'),' ...

  7. Java 8中的时间日期库DateTime API及示例

    点击蓝色"程序猿DD"关注我 回复"资源"获取独家整理的学习资料! Java8新特性的功能已经更新了不少篇幅了,今天重点讲解时间日期库中DateTime相关处理 ...

  8. sqlserver获取前一天的日期_Java8新特性时间日期库DateTime API及示例

    点击上方蓝字关注「程序新视界」 Java8新特性的功能已经更新了不少篇幅了,今天重点讲解时间日期库中DateTime相关处理.同样的,如果你现在依旧在项目中使用传统Date.Calendar和Simp ...

  9. java instant获取微秒转成日期格式_Java8新特性时间日期库DateTime API及示例

    点击上方蓝字关注「程序新视界」 Java8新特性的功能已经更新了不少篇幅了,今天重点讲解时间日期库中DateTime相关处理.同样的,如果你现在依旧在项目中使用传统Date.Calendar和Simp ...

最新文章

  1. LeetCode Kth Largest Element in an Array(小根堆)
  2. 【网址收藏】helm charts github地址
  3. 关于Spring AOP代理的生成过程
  4. 【详细解析】7-1 两个有序序列的中位数 (25 分)
  5. Codeforces 999F Cards and Joy 【dp】【性质】
  6. 惠普台式电脑引导不了系统_远程系统重装电脑维修笔记本台式xpwin7810系统启动安装64位32位专业版家...
  7. Spring-ConfigurationClassParser类
  8. 规则引擎drools java,spring,spring-boot,drools使用案例
  9. 开发者需要的 9 款代码比较工具
  10. 上海车展6大热门车型自动驾驶配置梳理
  11. 仿QQ登录界面UI设计
  12. 哔哩哔哩如何提取封面_如何正确提取视频封面
  13. 海思vo 分屏显示总结
  14. [NOIP2013 提高组] 火柴排队
  15. ​自动驾驶什么时候才会凉凉,估计还要多久?
  16. python文本编辑器_python最好的ide和文本编辑器
  17. QT在QML下实现多国语言翻译
  18. HDU1273-漫步森林
  19. 企业数字化办公利器——华为云桌面Workspace
  20. 编程题目分类(剪辑)

热门文章

  1. 【Java教程系列】JavaSE核心知识点总结
  2. Zbrush学习指南—小白也能学会得雕刻软件
  3. 深度学习(三十)贪婪深度字典学习
  4. java date 转换sql date_java.util.Date和java.sql.Date之间的转换
  5. python的os模块使用_Python之os模块的常见用法
  6. CentOS7 的开机自启动systemctl
  7. tar (child): bzip2: Cannot exec: No such file or directory
  8. 小程序种的轮播图高度的算法
  9. IOS之block,一点小心得
  10. luogu_1495【题解】中国剩余定理