更新发布元日期始终存储1970-01-07

时间:2019-06-15 作者:gezuka

我想将post meta“job\\u expires”更新为当前的“job\\u expires”元数据+1周,但使用此代码始终将1970-01-07存储为日期。

$lejar_datum = get_post_meta($job_id , \'_job_expires\', true);
$date = date(\'Y-m-d\',strtotime(\'+1 week\',$lejar_datum));
update_post_meta( $job_id, \'_job_expires\', $date);
如何存储当前“job\\u expires”日期+1周?

1 个回复
最合适的回答,由SO网友:kero 整理而成

启用调试后,您应该会收到以下消息:

注意:遇到格式不正确的数值

这是因为strtotime() expects an integer as its second argument. 你可以这样使用它

$date = date(\'Y-m-d\', strtotime(\'+1 week\', strtotime($lejar_datum)));
或者如果您想使用更现代的方法DateTime

$dt = DateTime::createFromFormat(\'Y-m-d\', $lejar_datum)->modify(\'+1 week\');
update_post_meta($job_id, \'_job_expires\', $dt->format(\'Y-m-d\'));