1

我目前正在为我当前的项目开发包管理器,我需要添加包订阅日期和包到期日期。

我正在使用php函数,date("Y-m-d H:i:s")

$package_subscription_start_date = date("Y-m-d H:i:s");

现在这是我的要求:我需要有 1 天、2 天、5 天、1 周、4 周、12 周、1 个月、6 个月、9 个月、1 年、2 年、5 年和 10 年的包裹年。

我怎么可能添加这些值并计算插入 mysql 的包到期日期,例如

$package_expiry_date = date("Y-m-d H:i:s") + 1 day;
$package_expiry_date = date("Y-m-d H:i:s") + 5 days;
$package_expiry_date = date("Y-m-d H:i:s") + 1 week;
$package_expiry_date = date("Y-m-d H:i:s") + 4 weeks;
$package_expiry_date = date("Y-m-d H:i:s") + 2 months;

$package_expiry_date = date("Y-m-d H:i:s") + 2 years;

最后,我需要处理其他日期问题,例如有效日期和闰年等。我还需要在 php 级别完成此操作,而不是使用 mysql / sql 查询。

我将不胜感激这方面的任何帮助。

4

4 回答 4

4

就像是

$date=date('Y-m-d H:i:s', strtotime('+1 day'));
$date=date('Y-m-d H:i:s', strtotime('+5 days'));
$date=date('Y-m-d H:i:s', strtotime('+1 week'));
$date=date('Y-m-d H:i:s', strtotime('+4 weeks'));
$date=date('Y-m-d H:i:s', strtotime('+2 months'));
$date=date('Y-m-d H:i:s', strtotime('+2 years'));
于 2012-10-20T12:53:53.187 回答
3

您是否尝试过php 中的strtotime()命令?

echo $expires = strtotime(date("Y-m-d H:i:s")." + 1 day");
echo date("Y-m-d H:i:s", $expires);

给你的输出

135082420020
12-10-21 08:56:40
于 2012-10-20T12:57:26.463 回答
1

看看 php DateTime对象。

例如在日期上添加时间:

//Get the current date
$date = new DateTime();

//Add 1 day
$date->modify('+1 Day');

//Output in Y-m-d format
echo $date->format('Y-m-d');

它还有很多其他有用的功能

于 2012-10-20T12:34:31.147 回答
0
<?php
    echo $date = date("Y-m-d");// current da

    $date1 = strtotime(date("Y-m-d", strtotime($date)) . " +1 day");
    echo date("Y-m-d", $date1);
    echo date("Y-m-d", $date1);

    $date2 = strtotime(date("Y-m-d", strtotime($date)) . " +1 week");
    echo date("Y-m-d", $date2);

    $date3 = strtotime(date("Y-m-d", strtotime($date)) . " +2 week");
    echo date("Y-m-d", $date3);

    $date4 = strtotime(date("Y-m-d", strtotime($date)) . " +1 month");
    echo date("Y-m-d", $date4);

    $date5 = strtotime(date("Y-m-d", strtotime($date)) . " +1 year");
    echo date("Y-m-d", $date5);
?>
于 2015-02-04T10:49:22.730 回答