php 如何在输入type=“date”时显示$date

ijxebb2r  于 2023-01-04  发布在  PHP
关注(0)|答案(1)|浏览(135)

我的数据库中所有的“日期”都是以下格式:“年-月-日”(例如:2022年3月9日)
我想有一个字段的输入类型=日期,所以用户可以修改日期。
我使用以下代码来提取数据:

$date      = "<input type=\"date\" id=\"date\" size= \"50%;\" name=\"date\" value=\"$res[date]\" >";

...
<thead> <th>Date </th> <td>$date </td> </thead>

但是我的输入框显示的是dd/mm/yyyy而不是实际日期。

我需要做什么格式才能使我的实际日期显示在输入框上?
我尝试了以下方法,但不起作用:

$date      = "<input type=\"date\" id=\"date\" size= \"50%;\" name=\"date\" value=\"date('d-m-Y',$res[date])\" >";
mspsb9vt

mspsb9vt1#

您正在向日期输入传递错误的格式。日期输入必须用RFC3339格式的文本填充,您可以修改它。
要将当前格式更改为Y-m-d,可以使用以下代码:

DateTime::createFromFormat('d-m-Y', $dateInput)->format('Y-m-d');

如果您使用的是MySQL,它使用YYYY-MM-DD的日期类型列,所以,保存日期与Y-m-d从PHP到MySQL的date字段似乎是正确的方式。

相关问题