我有一个来自SQL $start
的日期变量,但我需要用PHP为这个变量添加天数。我这样做是为了补充:
<?php
$start = $start;
//Incrementando 2 dias
$jor2 = strtotime($start . "+ 1 days");
echo date("d-m-Y", $jor2);
?>
我不知道什么是错的,但结果是:19-03-2028
我的变量$start
是28-03-18
。
输出应为:
$start (28 / 03 / 2018) + 7 days, (04 / 04 / 2018)
答案 0 :(得分:1)
<?php
// Date coming from Mysql
$start = '2018-04-05';
$result = date('Y-m-d', strtotime($start . ' +1 day'));
var_dump($result);
@axiac评论后更新:
由于$start
包含的日期格式与Mysql的格式不同,因此这是一种转换它的方法:
<?php
$start = '28-03-18';
list($d, $m, $y) = sscanf($start, '%d-%d-%d');
$start = $y . '-' . $m . '-' . $d;
答案 1 :(得分:1)
当组件分隔符为-
时,要么使用4位数年份(第一个或最后一个组件),要么年份是第一个组件(4或2位数)。
使用DateTime::createFromFormat()
告诉解析器您正在使用的格式:
$start = DateTime::createFromFormat('d-m-y', '28-03-18');
$end = $start->add(new DateInterval('P1D'));
echo($end->format('d-m-Y'));
# 29-03-2018