我试图将arrivalDateTimeDest的值回显到表单中,以便用户可以编辑此值。我试图通过几种方式实现这一目标,然而,回声的价值总是等于mm / dd / yyyy - : - - 。我究竟做错了什么?我的尝试列在下面。
<input type='datetime-local' id="arrivalDateTimeDest" name='arrivalDateTimeDest' value="<?php echo date_format($row['arrivalDateTimeDest'],'Y/m/d H:i:s')?>">
<input type='datetime-local' id="arrivalDateTimeDest" name='arrivalDateTimeDest' value="<?php echo date('Y/m/d H:i:s', $row['arrivalDateTimeDest'])?>">
<input type='datetime-local' id="arrivalDateTimeDest" name='arrivalDateTimeDest' value="<?php echo date('c', $row['arrivalDateTimeDest'])?>">
鉴于最近对这篇文章的回答,我已经确定了这个问题,但我还是无法解决。当输入type = text时,我没有回显该值的问题,但是,当输入类型设置为datetime-local时,我无法执行此操作。
答案 0 :(得分:1)
在更改日期格式之前使用strotitime。检查以下内容:
<?php $date = "2011-12-05 10:13 AM";?>
<input type='datetime-local' id="arrivalDateTimeDest" name='arrivalDateTimeDest' value="<?php echo date('Y-m-d\TH:i', strtotime($date)); ?>">
答案 1 :(得分:1)
是这是一项非常简单的任务,
将时间从数据库转换为时间戳。
$timestamp = strtotime($row['arrivalDateTimeDest']);
然后使用date()函数格式化此日期..以您想要的格式
echo date("Y-m-d", $timestamp);
在想要回复日期的地方使用这个... :) :)
答案 2 :(得分:0)
strtotime
无法正确处理mm/dd/yyyy
,请尝试此操作
echo DateTime::createFromFormat("m/d/Y H:i s", $row['arrivalDateTimeDest'])->format("y-m-d");
所以在你的代码中它应该是这样的:
<input type='datetime-local' id="arrivalDateTimeDest" name='arrivalDateTimeDest' value="<?php echo DateTime::createFromFormat("m/d/Y H:i:s", $row['arrivalDateTimeDest'])->format("y-m-d")?>">
确保此部分:"m/d/Y H:i s"
符合您从$row['arrivalDateTimeDest']