date_format()期望参数1为DateTime,给定字符串 [英] date_format() expects parameter 1 to be DateTime, string given

查看:142
本文介绍了date_format()期望参数1为DateTime,给定字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试将查询替换为PDO查询,但是日期格式存在问题。我需要以d / m / YH:i:s格式打印日期,但是在PDO脚本运行后,它将以这种格式打印日期Ymd H:i:s

  while($ row = $ sql-> fetch(PDO :: FETCH_ASSOC))
{
...
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 to Y-m-d H:i:s How can I get the previous format d/m/Y H:i:s?

解决方案

The first parameter to date_format needs to be an object of DateTime 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屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆