Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何以UNIX时间戳格式向日期添加特定的月数?_Php_Mysql_Date_Datetime_Unix Timestamp - Fatal编程技术网

Php 如何以UNIX时间戳格式向日期添加特定的月数?

Php 如何以UNIX时间戳格式向日期添加特定的月数?,php,mysql,date,datetime,unix-timestamp,Php,Mysql,Date,Datetime,Unix Timestamp,我在MySQL表中有一个名为last\u date的字段,其数据类型为bigint(12)。在这个字段中,我存储日期的等效UNIX时间戳值 现在我想插入UNIX时间戳值,该值相当于从今天开始的五(5)个月。如果今天的日期是 2014年2月13日(dd/mm/yyyy格式,2014年2月13日) 我想插入与日期等效的UNIX时间戳 2014年7月13日(dd/mm/yyyy格式,2014年7月13日) 此外,如果需要更改年份,那么它也应该起作用。意思是如果今天的日期是 2014年11月13日(dd

我在MySQL表中有一个名为last\u date的字段,其数据类型为bigint(12)。在这个字段中,我存储日期的等效UNIX时间戳值

现在我想插入UNIX时间戳值,该值相当于从今天开始的五(5)个月。如果今天的日期是

2014年2月13日(dd/mm/yyyy格式,2014年2月13日)

我想插入与日期等效的UNIX时间戳

2014年7月13日(dd/mm/yyyy格式,2014年7月13日)

此外,如果需要更改年份,那么它也应该起作用。意思是如果今天的日期是

2014年11月13日(dd/mm/yyyy格式,2014年11月13日)

那么要插入的等效UNIX时间戳应该是date

2015年4月13日(dd/mm/yyyy格式,2015年4月13日)


这意味着还应考虑年份变化。有人知道如何实现这一点吗?

MySql支持使用INTERVAL进行这类操作

INSERT INTO table SET newdate = unix_timestamp(now() + INTERVAL 5 month);
下面是一个实际的例子

mysql> select unix_timestamp(),unix_timestamp(now() + interval 5 month);
+------------------+------------------------------------------+
| unix_timestamp() | unix_timestamp(now() + interval 5 month) |
+------------------+------------------------------------------+
|       1392274422 |                               1405230822 |
+------------------+------------------------------------------+
1 row in set (0.00 sec)

你想让这种情况发生在PHP端还是通过MySql查询?@Rikesh:仅通过MySql查询。不涉及表单端或用户端(即PHP)的数据。