在MySQL PHP中更改日期和时间字段的显示格式

air*_*air 1 php mysql

我在PHP中的select语句是

  "select * from table";
Run Code Online (Sandbox Code Playgroud)

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

  <?php
      echo $row['mdate'];
  ?>
Run Code Online (Sandbox Code Playgroud)

结果是这样的

  2010-03-09 16:59:18
Run Code Online (Sandbox Code Playgroud)

我想以下列格式查看结果

  09-03-2010 16:59:18
Run Code Online (Sandbox Code Playgroud)

我想以下列格式查看结果

  09-03-2010 4:59:18 PM
Run Code Online (Sandbox Code Playgroud)

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

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

     or
Run Code Online (Sandbox Code Playgroud)

我也可以修改我的select语句.

Fra*_*ens 7

请参阅date_format():

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

并在jouw php-code中使用formated_date.


Pek*_*ica 6

你可以直接在数据库中进行格式化,就像Frank Heikens在他的回答中所示,或者你可以用PHP来完成.使用将mySQL日期值转换为UNIX时间戳

$timestamp = strtotime($row["mdate"]);
Run Code Online (Sandbox Code Playgroud)

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

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

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