Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在php中将日期转换为sql格式并存储到数据库_Php_Html_Mysql_Sql Server_Date - Fatal编程技术网

在php中将日期转换为sql格式并存储到数据库

在php中将日期转换为sql格式并存储到数据库,php,html,mysql,sql-server,date,Php,Html,Mysql,Sql Server,Date,我有html中的日期时间选择器,它会返回日期 当我在php页面中检索数据时 $date=$_POST['date']; echo $date; 它以这种格式返回输出 2015年11月13日 我想将其转换为存储在mysql表中 如何将其转换为sql格式以存储,因为当我尝试存储此日期时,默认情况下mysql存储0000-00-00。我不能采用varchar数据类型,因为我必须根据日期创建视图 我还需要代码将其再次转换为这种格式,以显示这种格式的数据 使用MySQL:- 或者尝试:- $date=$

我有html中的日期时间选择器,它会返回日期 当我在php页面中检索数据时

$date=$_POST['date'];
echo $date;
它以这种格式返回输出

2015年11月13日

我想将其转换为存储在mysql表中

如何将其转换为sql格式以存储,因为当我尝试存储此日期时,默认情况下mysql存储0000-00-00。我不能采用varchar数据类型,因为我必须根据日期创建视图

我还需要代码将其再次转换为这种格式,以显示这种格式的数据

使用MySQL:-

或者尝试:-

$date=$_POST['date'];

insert into table (col) values (str_to_date($date,'%d %M %Y'))
或者使用PHP
strotime

$time = strtotime('13 November 2015');
$newformat = date('Y-m-d',$time);
如果您正在使用,那么您应该使用以下方法

$date=$_POST['date'];  //13 November 2015
echo $date;
$myDateTime = DateTime::createFromFormat('j F Y', $date);
$newDateString = $myDateTime->format('Y-m-d');
echo $newDateString;    //2015-11-13

您应该在
try…catch
块中使用它,因为它会在失败时引发异常。

您可以使用strottime将日期转换为时间戳

然后,您可以使用日期功能将其转换为您喜欢的格式

$date = $_POST['date'];
$timestamp = strtotime($date);
$converted_date = date("Y-m-d H:i:s", $timestamp);
// var_dump($converted_date);

步骤1:提取时间变量(在步骤2中使用)

步骤2:使用上述信息创建时间戳

$timestamp = mktime($hour, $min, $sec, $month, $day, $year);
步骤3:使用PHP的日期函数:

echo date("Y-m-d", $timestamp);
参考:

date('Y-m-d',strottime($date))
echo date("Y-m-d", $timestamp);