我有以下功能只能从当月提取评论。我需要它不要在下个月提出任何意见。
我将下个月定义为$to_date
+1
如何更改此设置以自动确定何时在下一年,即阻止它在第13个月查看?感谢
Function to only pull comments from a date range of the current month
$from_date = date('Y-m') . '1 00:00:00';
$to_date = date('m') . '1 00:00:00'+1;
$all_comments = Comment::find('all',
array(
'conditions'=>array('response_date_and_time >= ? AND response_date_and_time <= ?', $from_date, $to_date )
)
);
答案 0 :(得分:2)
strototime可以为您做到这一点。您可以使用关键字“now + 1 month”,它将获取当前日期+1并返回unix时间戳,日期函数将转换为正确的月份。应该返回02
$to_date = date('m', strtotime('now + 1 month'));
答案 1 :(得分:1)
有两种方法。正如已经提到的,你可以使用strtotime:
$to_date = date('m', strtotime('now + 1 month')) . ' 00:00:00';
但我认为你也可以了解模数运算符%
。基本上,模数将在除法后返回余数(在PHP中这是一个整数,在其他语言中(如JavaScript)它也将包括任何小数值)。在这种情况下,这意味着我们可以快速简便地确保月份包装永远不会高于12。
// get the modulus
$dt = ((date('m')+1)%12);
// bit of a trick. December is the 12th month. 12 % 12 is 0, which is invalid
// so we check to see if the month is 0, and if it is we use 12 instead.
$to_date = ($dt?$dt:12) . ' 00:00:00';