我得到了一个日期格式,比如Mon Apr 22 2013 12:16:00 GMT+0530
(印度标准时间),我的 php 函数形成了一个 javascript。
我想以“2013-04-22 12:16:00”格式将其存储到我的数据库表中。
谁能帮我转换这种日期类型。
我试过了:
date("Y-m-d H:i:s",$startDate);
但它给出了错误
date() 期望参数 2 是给定的长字符串
使用 strtotime() 和 date():
$originalDate = "Mon Apr 22 2013 12:16:00 GMT+0530 (India Standard Time)" ;
$newDate = date("Y-m-d H:i:s", strtotime($originalDate));
(请参阅PHP 站点上的strtotime和date文档)。
或使用 日期时间:
<?php
$source = "Mon Apr 22 2013 12:16:00 GMT+0530 (India Standard Time)";
$date = new DateTime($source);
echo $date->format("Y-m-d H:i:s"); // 22 2013 12:16:00
echo $date->format("Y-m-d H:i:s"); // 22 2013 12:16:00
?>
尝试使用strtotime
将时间戳转换为 unix 格式,以便您可以在date()
函数中使用它:
date("Y-m-d H:i:s",strtotime($startDate));
您也可以尝试使用(通常包含的)DateTime
类。特别是,看看DateTime::createFromFormat
。它可以帮助您解决日期字符串中的歧义(strtotime()
有时会失败或错误解析日期字符串)。DateTime::createFromFormat
允许您专门指定日期字符串的格式,以免产生歧义。
首先你需要把它保存为时间戳所以,
$startDate = strtotime($javascript_value);
$result = date("Y-m-d H:i:s",$startDate);