今天是2018-07-31

date("Y-m-d",strtotime("-1 month"));

怎么输出是2018-07-01?

坑的例证

var_dump(date("Y-m-d", strtotime("-1 month", strtotime("2017-03-31"))));
//输出2017-03-03
var_dump(date("Y-m-d", strtotime("+1 month", strtotime("2017-08-31"))));
//输出2017-10-01
var_dump(date("Y-m-d", strtotime("next month", strtotime("2017-01-31"))));
//输出2017-03-03
var_dump(date("Y-m-d", strtotime("last month", strtotime("2017-03-31"))));
//输出2017-03-03

坑的原因

strtotime的自动规范化--关于月的处理:默认的是自动的调整  我们可以根据需求人为的调整

1. 先做-1 month, 那么当前是07-31, 减去一以后就是06-31.

2. 再做日期规范化, 因为6月没有31号, 所以就好像2点60等于3点一样, 6月31就等于了7月1

解决方法

var_dump(date("Y-m-d", strtotime("last day of -1 month", strtotime("2017-03-31"))));
//输出2017-02-28
var_dump(date("Y-m-d", strtotime("first day of +1 month", strtotime("2017-08-31"))));
输出2017-09-01
var_dump(date("Y-m-d", strtotime("first day of next month", strtotime("2017-01-31"))));
输出2017-02-01
var_dump(date("Y-m-d", strtotime("last day of last month", strtotime("2017-03-31"))));
输出2017-02-28

题目

前一天的时间
<?php
$a=date("Y-m-d H:i:s",strtotime("-1 days",time()));var_dump($a);

-------------参考鸟哥的文章

PHP的strtotime相关推荐

  1. strtotime 获取当月最后一天的日期

    strtotime('last day of this month', $timestamp); 转载于:https://www.cnblogs.com/jianzhaojing/p/11244177 ...

  2. PHP时间戳 strtotime()使用方法和技巧

    在php中我想要获取时间戳有多种方法,最常用的就是使用time函数与strtotime()函数把日期转换成时间戳了,下面我来给大家分享一下时间戳函数 strtotime用法. 获取指定的年月日转化为时 ...

  3. php中strtotime(date,js模仿php中strtotime()与date()函数实现方法

    本文实例讲述了js模仿php中strtotime()与date()函数实现方法.分享给大家供大家参考.具体如下: 在js中没有像php中strtotime()与date()函数,可直接转换时间戳,下面 ...

  4. php date strtotime的用法

    1.上个月第一天及最后一天.echo date('Y-m-01', strtotime('-1 month'));echo strtotime(date('Y-m-01 0:00:00', strto ...

  5. php strtotime 和 date 日期操作

    time()得到的数值是1970-1-1到现在的秒数,strtotime("now")也是,两个值是相同的. http://doc.thinkphp.cn/manual/syste ...

  6. PHP date, strtotime, mktime处理

    今天经过几个工作日(周一-周五)后为哪天. 2016-09-08经过5个工作日为2016-09-14 $currentDate=date('Y-m-d', strtotime("-1 day ...

  7. 日期格式php用点隔离,PHP学习之校验日期格式合法性?(使用strtotime()和date())...

    详细内容 本篇文章主要讲述了用PHP来校验日期格式是否合法,具有一定参考价值,有需要的朋友可以了解一下,希望能帮到你. 在后端开发中,我们常常需要校验前端传入参数的合法性,如果是校验日期参数,我们可以 ...

  8. php中strtotime的意思,php中strtotime函数用法详解

    本文实例讲述了php中strtotime函数用法.分享给大家供大家参考.具体如下: strtotime(字符串$时间[,诠释$现在])int strtotime(string $time [,int ...

  9. php计算时间顺延3分,PHP关于strtotime函数的大坑

    2020/04/30 早上上班的时候看到系统里过去半年每个月账单记录里,出现了两次202003,少了202002的记录,比较奇怪就查了下前端代码,是从后端php使用strtotime获取的. 项目中使 ...

最新文章

  1. matplotlib hist 绘制直方图 bar 绘制条形图 API
  2. 16.编译错误Unknown CMake command “check_symbol_exists“解决
  3. C九:free与malloc
  4. CSS 基础知识(二)
  5. linux 统计_聊聊 Linux 的内存统计
  6. Linux 中断实验
  7. 第二十六期:100 个网络基础知识普及,看完成半个网络高手
  8. 手机应用url抓取_Python爬虫入门,快速抓取大规模数据(第六部分)
  9. 用计算机算非,在线计算器上的与、或、非、异或等逻辑运算键如何使用?
  10. ACL2021 | 对比学习8篇论文一句话总结
  11. 《迅雷链精品课》第九课:区块链 P2P 网络
  12. 开发中接口的类型都有哪些以及如何调用?
  13. flash builder 找不到所需要的AdobeFlashPlayer调试器版本
  14. chorme唤起Java开发的本地程序全采坑记
  15. dojo query 实现Ajax,Dojo Query 详解
  16. Docker Build Cache 缓存清理
  17. 电子产品销售数据分析及RFM用户价值分析
  18. Datatable转为ListT / DataRow转为实体类对象
  19. 如何在el-table中如何使用计算属性computed
  20. 2020安徽省大学生程序设计大赛题解——A数字排列

热门文章

  1. python爬大学生就业信息报告_Python程序员招聘市场简要报告
  2. python最大公约数和最小公倍数_python怎么求最大公约数和最小公倍数
  3. windows平台下caffe可视化配置
  4. 怎么下载haarcascade_frontalface_default.xml
  5. dubbo源码分析系列(1)扩展机制的实现
  6. Selenium 使用要点记录二
  7. SpringMVC+Apache Shiro+JPA(hibernate)案例教学(三)
  8. 【学习】程序员技术练级攻略
  9. 释放Linux磁盘空间方法
  10. Windows 编程