Php 在postgresql中设置当前日期和月份之后的默认日期和月份

Php 在postgresql中设置当前日期和月份之后的默认日期和月份,php,postgresql,date,Php,Postgresql,Date,我使用PHP+POSTGRESQL将日期必须预先确定的记录插入到表中,在这种情况下,我必须始终插入日期为“5”的日期,而月份是插入记录的月份的下一个日期。如果我今天插入,日期列应包含: 2017-04-05(格式为YYYY-MM-DD) 对于我计划在当前日期基础上增加30天的月份,如下所示: 现在()+cast('1天'作为间隔)*30,但有些月份没有30天,所以您可能会遇到问题。对于这一天,我不知道是否有一个函数来设置Postgres中日期的日期,所以可能服务器端有一个解决方案 任何来自服务器

我使用PHP+POSTGRESQL将日期必须预先确定的记录插入到表中,在这种情况下,我必须始终插入日期为“5”的日期,而月份是插入记录的月份的下一个日期。如果我今天插入,日期列应包含:

2017-04-05(格式为YYYY-MM-DD)

对于我计划在当前日期基础上增加30天的月份,如下所示: 现在()+cast('1天'作为间隔)*30,但有些月份没有30天,所以您可能会遇到问题。对于这一天,我不知道是否有一个函数来设置Postgres中日期的日期,所以可能服务器端有一个解决方案


任何来自服务器或数据库的解决方案都将不胜感激。

我选择的解决方案工作正常。对于那些正在寻找使用PHP的其他解决方案的人,我已经做了以下工作:

select sysdate::date as current, 
    (date_trunc('month', sysdate)+'1 month'::interval+'4 day'::interval)::date as next;

 current      | next
--------------+------------
 2017-03-23   | 2017-04-05
$mydate = date('Y-m-05');//Set the default day in this line
$fecha = date('Y-m-05', strtotime("+1 month", strtotime($fecha)));//the next month

对于我计划添加30天的月份
-为什么不直接添加1个月?