Php datetime到mysql datetime格式的数组
我有一个名为Php datetime到mysql datetime格式的数组,php,mysql,datetime,Php,Mysql,Datetime,我有一个名为$process\u date的数组,包含两个元素。元素的格式为dd/mm/yy H:i:s $process_date = array( "27/10/15 17:00:00", " 27/10/15 18:00:00" ) 我需要将其转换为mysql datetime格式以查询数据库中的字段。我试过了 $myDateTime = \DateTime::createFromFormat('d-m-Y H:i:s', $process_date[0]); $newDateS
$process\u date
的数组,包含两个元素。元素的格式为dd/mm/yy H:i:s
$process_date = array(
"27/10/15 17:00:00",
" 27/10/15 18:00:00"
)
我需要将其转换为mysql datetime格式以查询数据库中的字段。我试过了
$myDateTime = \DateTime::createFromFormat('d-m-Y H:i:s', $process_date[0]);
$newDateString = $myDateTime->format('Y-m-d H:i:s');
我得到
Call to a member function format() on a non-object
我找到了这个链接
并尝试
$myDateTime = new \DateTime($process_date[0]);
$myDateTime->format('Y-m-d H:i:s');
我明白了
我错过什么了吗
提前感谢尝试以下方法:
$dateArray = array(
'27/10/15 17:00:00',
'27/10/15 18:00:00',
);
$formattedDateArray = array();
foreach ($dateArray as $date) {
$myDateTime = \DateTime::createFromFormat('d/m/y H:i:s', $date);
$formattedDateArray[] = $myDateTime->format('Y-m-d H:i:s');
}
请注意年份的小写字母“y”,因为年份格式仅为2位小数。“Y”将把年份输出为“0015”,而“Y”将输出为“2015”。尝试以下方法:
$dateArray = array(
'27/10/15 17:00:00',
'27/10/15 18:00:00',
);
$formattedDateArray = array();
foreach ($dateArray as $date) {
$myDateTime = \DateTime::createFromFormat('d/m/y H:i:s', $date);
$formattedDateArray[] = $myDateTime->format('Y-m-d H:i:s');
}
请注意年份的小写字母“y”,因为年份格式仅为2位小数。“Y”将以“0015”的形式输出当年,而“Y”将以“2015”的形式输出
元素的格式为dd/mm/yy H:i:s
您有d/m/y
值,并尝试使用d-m-y
格式进行提取。
改用这个:
$myDateTime = \DateTime::createFromFormat('d/m/y H:i:s', $process_date[0]);
元素的格式为dd/mm/yy H:i:s
您有d/m/y
值,并尝试使用d-m-y
格式进行提取。
改用这个:
$myDateTime = \DateTime::createFromFormat('d/m/y H:i:s', $process_date[0]);
我认为您需要用
-
替换流程中的/
日期数组,这样日期就是27-10-15 17:00:00
我认为您需要用-
替换流程中的/
日期数组,这样日期就是27-10-15 17:00:00
您错过了什么。他的格式实际上应该是'd/m/y H:i:s'
,因为他有两位数的年份。谢谢它工作了\DateTime::createFromFormat('d/m/y H:i:s',$process\u date[0])你错过了什么。他的格式实际上应该是'd/m/y H:i:s'
,因为他有两位数的年份。谢谢它工作了\DateTime::createFromFormat('d/m/y H:i:s',$process\u date[0])代码>