【问题标题】:PHP format date from returned data返回数据中的 PHP 格式日期
【发布时间】:2013-11-14 21:04:05
【问题描述】:

我有一个返回网格的查询。其中一列带回一个带有日期的列,如下所示:

 echo "<td>{$Row[ETA]}</td>";

这会显示来自数据库的 ETA,如下所示:

 2013-10-30 20:00:0

我基本上想删除 TIME 部分并保留日期。这可以在 TD 中完成还是我必须在其他地方进行转换?如果可能的话,我只想在单元格内进行转换。

让我知道如何做到这一点。

【问题讨论】:

  • 理想情况下,您会在查询中这样做:TIME(datecolumnname)
  • 理想情况下,您应该听取@JohnConde 的建议,因为它会限制您在数据库和脚本之间的开销,但您也可以随时使用substr() echo "&lt;td&gt;".substr($Row[ETA], 0, 10)."&lt;/td&gt;";
  • 你的意思是DATE()
  • @MonkeyZeus - substr 版本对我有用。谢谢。我投了你一票。
  • 接受了。我认为您在此之前帮助我解决了另一个问题。再次感谢。

标签: php mysql time format


【解决方案1】:

你可以使用strtotime()date()函数来实现这个!!!

date("Y-m-d", strtotime($Row[ETA]));

【讨论】:

    【解决方案2】:

    好吧!如果您只想获取日期,则应在查询中使用此函数

     DATE(date_field)
    

    因为这将只返回日期时间列中的日期

    【讨论】:

      【解决方案3】:

      理想情况下,您应该听听 JohnConde 的建议,因为它会限制您在数据库和脚本之间的开销,但如果您愿意,您也可以动态地 substr():

      echo "<td>".substr($Row['ETA'], 0, 10)."</td>";
      

      【讨论】:

        【解决方案4】:

        你必须以不同的方式回应它:

        $eta = $Row['ETA'];
        $etaDate = date("Y-m-d", strtotime($eta));
        //now use $etaDate
        

        【讨论】:

          【解决方案5】:

          你可以使用date函数来格式化时间,因为你得到的是一个日期作为字符串,你可以使用strtotime

          我认为您正在寻找的格式是:date("Y-m-d", strtotime($Row["ETA"]));,您可以将其解析为变量并将其保存在那里,或者您可以将结果连接在一起以获得最终字符串。

          【讨论】:

            猜你喜欢
            • 2022-12-02
            • 2011-04-12
            • 1970-01-01
            • 2012-03-18
            • 2019-08-19
            • 1970-01-01
            • 1970-01-01
            • 2023-03-24
            • 2013-07-20
            相关资源
            最近更新 更多