- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我尝试获取一段时间内的所有天数。是一整天还是几个小时都没关系。我当前使用 DatePeriod 的代码对我不起作用。
例子:
[start] => DateTime Object
(
[date] => 2014-01-27 22:40:40
[timezone_type] => 1
[timezone] => +00:00
)
[end] => DateTime Object
(
[date] => 2014-01-28 17:40:40
[timezone_type] => 1
[timezone] => +00:00
)
$interval = new DateInterval('P1D'); // 1Day Interval
$daterange = new DatePeriod($time['start'], $interval ,$time['end']);
$return['days'] = array();
foreach($daterange as $date){
$return['days'][] = $date->format("Y-m-d");
}
我想得到
[0] => 2014-01-27
[1] => 2014-01-28
但我只得到
[0] => 2014-01-27
是否可以更改 DatePeriod 参数或其他内容?
最佳答案
DatePeriod
对象忽略最后一个时间段。您可以通过按间隔增加结束日期来解决此问题:
$interval = new DateInterval('P1D');
$start->setTime(0, 0);
$end->setTime(0, 0)->add($interval);
$periods = new DatePeriod($start, $interval, $end);
更新:如果您只循环天数,则删除(设置为 00:00:00)开始日期和结束日期的时间部分。
关于php DatePeriod 没有按预期返回 2 天,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21282322/
我想使用 PHP DateInterval 来迭代月份: $from = new DateTime(); $from->setDate(2014, 1, 31); $period = new Date
为什么今天被排除在返回值之外? SELECT DATE(created) AS reg_date, COUNT(*) AS user_reg_per_day FROM users WHE
我决定对我使用的 PHP 版本进行更新,从 5.4.7 到 5.4.30。看到一些扩展 DatePeriod 的脚本开始抛出错误消息,我感到非常惊讶。 这是稍后提到的错误报告中的代码示例。 test
我正在尝试获取本周所有工作日的日期范围。为此,我编写了以下代码。 代码 $begin = new DateTime('monday this week'); 2016-07-04 $end = clo
我想创建有开始时间、结束时间和休息时间的时间段。 public function getServiceScheduleSlots($duration,$break, $stTime,$enTime)
我尝试获取一段时间内的所有天数。是一整天还是几个小时都没关系。我当前使用 DatePeriod 的代码对我不起作用。 例子: [start] => DateTime Object (
如何获取 DatePeriod 对象的开始和结束日期? $today = new \DateTime(date('Y-m-d')); // 2012-05-30 $period = new \Dat
我刚问了这个问题,它被标记为已经回答,但这样做的人显然不明白这个问题。 这篇文章被标记为对此的重复问题, How to get time difference in minutes in PHP ,
我了解日期期间的工作原理,但有一个异常(exception),有没有办法从日期期间找出有多少个间隔? 例如: // define the period of the range $period = n
在使用 DateTime DateInterval 和 DatePeriod 计算两个日期之间的间隔时,我在使用 P1W(周)和 P1M(月)时遇到了一些意想不到的结果。 如果我们获取 9 月 30
我需要在一段时间内获取某些工作日。工作日只能是一个或多个,例如仅所有星期一或所有星期一、星期二和星期三。 我想使用 DatePeriod连同 DateInterval::createFromDateS
我正在尝试像这样使用 PHP DatePeriod 来创建一个年周数组: $from = new DateTime('2014-09-16'); $to = new DateTime('2015-02
我有两个 DateTime 对象: $start = new DateTime('first thursday of June 2012'); $end = new DateTime('2012-
我是一名优秀的程序员,十分优秀!