【问题标题】:Formatting Date and Time on a table populated with mysql在填充有 mysql 的表上格式化日期和时间
【发布时间】:2013-11-27 21:10:12
【问题描述】:

我在 mysql 数据库中存储了日期和时间字段,它们具有非常丑陋的 unix 格式(由 mysql 应用)。

为了使这种格式适应更熟悉的格式并在屏幕上回显,我会获取日期并将其绑定到变量$mydate,所以我只是这样格式化。

$mydate= new DateTime($mydate);
$mydate=date_format($mydate,"d/m/Y");

这对我来说很完美。

现在我有一个新的挑战:我想构建一个表格,其中有一个日期和时间字段,我也必须以某种方式对其进行格式化。所以这是我到目前为止的代码:

if ($arch = $pdo->prepare("SELECT date, time, info FROM tblinfo WHERE idinfo = ?")) { 
  $arch ->execute(array($idpac));   
  $data = $arch->fetchAll();
  echo '<div class="cool_table" ><table><tr><td>TIME</td><td >DATE</td><td>INFO</td></tr>';
  foreach ($data as $row){
  echo '<tr>';
  foreach ($row as $col){
  echo '<td>'.$col.'</td>';
  }
  echo '</tr>';
  }
  echo '</table></div>';    
}

所以这为我生成了一个非常酷的表格。但我似乎无法弄清楚如何使用此代码格式化日期和时间。有人可以帮我解决这个问题吗?

【问题讨论】:

  • 这不是“丑陋”的 unix 格式。这是本机 mysql yyyy-mm-dd hh:mm:ss 格式。如果你想让它显示为别的东西,那么 RTFM:dev.mysql.com/doc/refman/5.5/en/…

标签: mysql date html-table format


【解决方案1】:

您是否尝试过谷歌搜索 LANGUAGE OBJECT OPERATION 生成 PHP DateTime 格式,并作为第一个结果之一返回:

http://php.net/manual/en/datetime.format.php

该页面有帮助吗?该技术泛化。 :)

【讨论】:

    【解决方案2】:

    我建议您直接在查询中格式化日期,例如:

    SELECT 
      DATE_FORMAT(date,'%m/%d/%Y') AS formateddate, 
      TIME_FORMAT(time,'%H:%i') AS formatedtime, 
      info 
    FROM tblinfo 
    WHERE idinfo = ?
    

    编辑

    根据@azirion 的评论交换参数

    【讨论】:

    • 好主意欧根。只需将 DATE_FORMAT 的代码稍微翻转一下,您就可以将其向后读: DATE_FORMAT(date,'%m/%d/%Y',) AS formateddate, TIME_FORMAT(time,'%H:%i' ) AS formatedtime...现在它就像一个魅力!谢谢:D
    • 不错,看来我终于老了!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-29
    • 2013-10-05
    相关资源
    最近更新 更多