This question already has answers here:
Convert a date format in PHP
(16个答案)
6年前关闭。
基本上,我有一个用户选择的日期,其格式如下:
我需要将其格式化为yyyy-mm-dd格式,作为数据库的日期类型,如下所示:
我将日期存储在变量中,将其称为
我已经尝试过使用createFromFormat函数,如下所示:
但我得到一个错误,说:
有人可以告诉我我如何使用不正确吗?
(16个答案)
6年前关闭。
基本上,我有一个用户选择的日期,其格式如下:
01-12-2013 (dd-mm-yyyy)
我需要将其格式化为yyyy-mm-dd格式,作为数据库的日期类型,如下所示:
2013-12-01
我将日期存储在变量中,将其称为
$date
我已经尝试过使用createFromFormat函数,如下所示:
$processdate = DateTime::createFromFormat('dd-mm-yy', $date);
echo $processdate->format('yy-mm-dd');
但我得到一个错误,说:
Fatal error: Call to a member function format() on a non-object
有人可以告诉我我如何使用不正确吗?
最佳答案
据记录,createFromFormat
会在失败时返回false
,这正是此处发生的情况。当您尝试在format
上调用false
时,程序会崩溃,这没有任何意义。
原因是格式字符串错误。对于给定的输入,正确的格式字符串是"d-m-Y"
(格式字符串也记录在同一页上)。
当然,这意味着您的输出格式字符串也是错误的:它应该是"Y-m-d"
。
关于php - 在PHP中将数据库日期格式转换为yyyy-mm-dd并重新转换为dd-mm-yyyy ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15248664/