date_format()期望参数1为DateTime,给定字符串 [英] date_format() expects parameter 1 to be DateTime, string given
问题描述
我正在尝试将查询替换为PDO查询,但是日期格式存在问题。我需要以d / m / YH:i:s格式打印日期,但是在PDO脚本运行后,它将以这种格式打印日期Ymd H:i:s
while($ row = $ sql-> fetch(PDO :: FETCH_ASSOC))
$ p中给出的字符串$ p>
{
...
echo< td> 。 date_format($ row ['date'],d / m / Y H:i:s')。 ;< / td>;
...
}
警告:date_format()期望参数1为DateTime,在
但是如果我将代码更改为
echo< td> 。 $ row [’date’]。 ;< / td>;
然后返回到Ymd H:i:s
如何获得以前的格式d / m / YH:i:s
?解决方案
date_format
的第一个参数必须是DateTime
类的对象。echo< td> 。 date_format(new DateTime($ row ['date']),d / m / Y H:i:s)。 < / td>;
或者,或者
echo< td> 。 date_format(date_create($ row ['date']),‘d / m / Y H:i:s’)。 < / td>;
I'm trying to replace my queries to PDO query and I have problems with date formats. I need to print dates in format d/m/Y H:i:s but after PDO script runs it prints the date in this format Y-m-d H:i:s
while($row = $sql -> fetch(PDO::FETCH_ASSOC)) { ... echo "<td>" . date_format( $row['date'], 'd/m/Y H:i:s'). "";"</td>"; ... } Warning: date_format() expects parameter 1 to be DateTime, string given in
But if I change the code to
echo "<td>" . $row['date']. "";"</td>";
then it returns toY-m-d H:i:s
How can I get the previous formatd/m/Y H:i:s
?解决方案The first parameter to
date_format
needs to be an object ofDateTime
class.echo "<td>" . date_format( new DateTime($row['date']), 'd/m/Y H:i:s' ). "</td>";
or, alternatively
echo "<td>" . date_format( date_create($row['date']), 'd/m/Y H:i:s' ). "</td>";
这篇关于date_format()期望参数1为DateTime,给定字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!