我目前正在为当前项目的包管理器工作,我需要添加包订阅日期和包的到期日期。
我正在使用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查询。
我将在这方面给予任何帮助。
答案 0 :(得分:3)
像
这样的东西$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'));
答案 1 :(得分: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
答案 2 :(得分: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');
它有许多其他有用的功能
答案 3 :(得分: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);
?>