重新格式化从 html 表单输入的日期,然后再将其收集到 php 的 $_POST 中

Reformatting date inputted from a html form before collecting it in $_POST in php

我有这个 html 表单,它要求用户选择日期(输入类型= "date"),格式为 dd/mm/yyyy(我想这是由于我的浏览器),我正在使用 $_POST($date1=$_POST("date")] 在另一个 .php 文件的变量中收集该输入。我必须使用 $date1 进行进一步比较(在 where 子句中使用它)鉴于我的 table 中的日期是 yyyy-mm-dd 格式。

建议我一些方法,通过它我可以将 html 表单输入日期重新格式化为所需的格式。或者还有其他方法吗?

我是新手,如果你觉得这个问题已经被问过了,请不要惊慌,可以随时向下滚动:)

$datetime = strtotime($_POST("date"));
$mysqldate = date("d-m-Y", $datetime);

使用DateTime::createFromFormat。然后您可以将日期重新格式化为您想要的任何其他格式。

$date = DateTime::createFromFormat('d/m/Y', $_POST('date'));
$date = $date->format('Y-m-d');

试试这个:

$date=strtotime($_POST['date']);
$date=date('Y-m-d',$date);

使用strtotime() with date()

echo date('Y-m-d H:i:s',strtotime($_POST['date']));