PHP,date_modify()与变量

时间:2018-07-09 04:55:51

标签: php

我需要使用索引元素作为更改日期的量

$id = $_POST['id'];
$ids = explode(',',$id);

$dateCreated = date('Y-m-d'); 
$dateExpiredtemp =date_create($dateCreated);
date_modify($dateExpiredtemp,'+ $ids[2]'); 
$dateExpired = date('$dateExpiredtemp');

date_modify($ dateExpiredtemp,' + $ ids [2]');

此行提供此错误

警告:date_modify():无法解析位置0(+)处的时间字符串(+ $ ids [2]):

中的意外字符

$ ids [2]是一个字符串,需要将其携带到date_modify的altering参数中

2 个答案:

答案 0 :(得分:0)

更改此代码行

date_modify($dateExpiredtemp,'+ $ids[2]');

进入

date_modify($dateExpiredtemp,'+ ' . $ids[2]);

您的初始代码将无法识别$ids[2],因为它包含在字符串中。因此,$ids[2]将不会被解析。

答案 1 :(得分:0)

您的$ids数组似乎有问题。

我假设$ids[2]只是一个数字,这就是为什么您遇到错误的原因。您需要指定一个时间单位,例如days。看看下面的代码,我在days函数的第二个参数的末尾添加了date_modify

$id = $_POST['id'];
$ids = explode(',',$id);

$dateCreated = date('Y-m-d'); 
$dateExpiredtemp =date_create($dateCreated);
date_modify($dateExpiredtemp,'+ $ids[2] days'); 
$dateExpired = date('$dateExpiredtemp');