Php 标准时间(年月日第n天)

Php 标准时间(年月日第n天),php,date,strtotime,Php,Date,Strtotime,当正确答案为2013-04-22时,为什么会输出2013-04-29 每当您搜索的日期恰好在一个月的第一天,day counter(即“第四天”)总是比它应该显示的多显示一天 示例:“2013年5月第三个星期三”输出2013-05-22,此时应为2013-05-15 我猜解决这一问题的最快方法是查看一个月的第一天是否与您要查找的同一天,并相应地减少日计数器(“第四天”、“第三天”等)?将短语更改为: 4月的第四个星期一”。日期(“Y”,标准时间(“2013-04-01”) 如果其他人也在此处查找

当正确答案为2013-04-22时,为什么会输出2013-04-29

每当您搜索的日期恰好在一个月的第一天,day counter(即“第四天”)总是比它应该显示的多显示一天

示例:“2013年5月第三个星期三”输出2013-05-22,此时应为2013-05-15


我猜解决这一问题的最快方法是查看一个月的第一天是否与您要查找的同一天,并相应地减少日计数器(“第四天”、“第三天”等)?

将短语更改为:

4月的第四个星期一”。日期(“Y”,标准时间(“2013-04-01”)


如果其他人也在此处查找第n个天的答案,则键为的,,例如上个月的第15天:


date(“Y-m-d”,strotime(date(“Y-m-d”,strotime(“上个月的第一天”)。+14天”);

也许是因为您指定了年、月、日期?只是假设,但它可能解释为“2013-04-01年后的第四个星期一”,因为标题实际上写的是**[月][年]的
nth[天]**
而的就是答案。谢谢!非常好用。我在PHP手册中看到的一些示例省略了of,所以我就是这么做的。原来手册只是谎言。
<?php
  $endDate = date("Y-m-d", strtotime("fourth monday april ". date("Y", strtotime("2013-04-01"))));     
  echo $endDate
?>