添加现有天数

时间:2016-05-25 09:01:16

标签: php datetime php-5.3

我遇到了问题,我不明白它在哪里: 所以,如果我这样做:

$end_date   = date('Y-m-d H:i:s',strtotime("+ $frequency days")); --> it works

如果我这样做:

$end = $o_user->end;
$o_user->end  = date($end, strtotime("+ $frequency days")); ---> not work

我测试了,2个日期的格式为:Y-m-d H:i:s 我的错误在哪里?请帮我。 Thx提前

4 个答案:

答案 0 :(得分:2)

日期的第一个参数是格式,而不是另一个日期。

它应该是这样的:

$o_user->end  = date("Y-m-d H:i:s", strtotime($end . " +$frequency days"));

答案 1 :(得分:0)

也许你只想做

$o_user->end->modify("+ $frequency days");

它更具可读性和紧凑性。

BTW您的错误是date()函数期望第一个参数是一个字符串(日期格式)

答案 2 :(得分:0)

更改为$o_user->end = date('Y-m-d H:i:s', strtotime($end, "+". $frequency. "days"));

答案 3 :(得分:0)

您可以使用以下代码

$i_frequency = 4;
$end = '2016-05-23 10:48:42';
echo "==" . date('Y-m-d', strtotime("+$i_frequency days", strtotime($end)));

OR

$i_frequency = 4;
$end = '2016-05-23 10:48:42';
echo "==" . addDate($end, $i_frequency);
function addDate($date, $day)//add days
{
    $sum = strtotime(date("Y-m-d", strtotime("$date")) . " +$day days");
    $dateTo = date('Y-m-d', $sum);
    return $dateTo;
}