【问题标题】:Change display format of date and time field in MySQL PHP更改 MySQL PHP 中日期和时间字段的显示格式
【发布时间】:2010-03-09 19:35:40
【问题描述】:

我在 PHP 中的 select 语句是

  "select * from table";

我使用下面的 PHP 语句来显示 MySQL 字段的日期和时间。

  <?php
      echo $row['mdate'];
  ?>

结果是这样的

  2010-03-09 16:59:18

我想查看以下格式的结果

  09-03-2010 16:59:18

我想查看以下格式的结果

  09-03-2010 4:59:18 PM

没有定义任何额外的功能。我只能修改我的 echo 语句。

  <?php echo $row['msgdate']; ?>

     or

我也可以修改我的选择语句。

【问题讨论】:

  • 您将来也应该尽量避免使用 SELECT *,如果您任由选择所有内容,对数据库实现的更改更有可能对您的代码产生影响。跨度>

标签: php mysql


【解决方案1】:

date_format():

select *, date_format(mdate, '%d-%m-%Y %H:%i:%s') AS formated_date from tabl;

并在 jouw php-code 中使用 formated_date。

【讨论】:

  • +1 我的 antwoord soudieselfde wees,作为 ek vinniger kon getik。 (翻译:如果我能打字更快的话,我的答案会是一样的。)
  • ;) 我确实有点懂南非荷兰语,听起来像荷兰语。
【解决方案2】:

您可以像 Frank Heikens 在他的回答中显示的那样直接在数据库中进行格式化,或者您可以在 PHP 中进行。使用

将 mySQL 日期值转换为 UNIX 时间戳
$timestamp = strtotime($row["mdate"]);

那么你可以使用date()的所有选项来格式化它,例如:

echo date("Y-m-d H:i:s", $timestamp); // returns 09-03-2010 16:59:18

这两种方法同样有效;我个人喜欢修改PHP中的值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-03-30
    • 1970-01-01
    • 2013-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多