将日期格式化为易于阅读的格式

33
假设在我的mysql数据库中有一个时间戳2013-09-30 01:16:06,并且假设此变量是$ts。 如何输出以类似于2013年9月30日的格式?
7个回答

64
$timestamp = "2013-09-30 01:16:06";
echo date("F jS, Y", strtotime($timestamp)); //September 30th, 2013

注意使用S来获取天数的英语序数后缀。
如果您已经在使用strtotime,并需要一个用于当前时间的易读日期,可以直接使用关键词“now”,例如:strtotime("now")

相关资源


26

4

我认为那里甚至不需要php。请查看MySQL的DATE_FORMAT()函数。

示例:

SELECT DATE_FORMAT('2013-09-30 01:16:06', '%M %D, %Y %H:%i:%s') as `readable`;

结果:

September 30th, 2013 01:16:06

实际使用:

SELECT
    DATE_FORMAT(`date_column`, '%M %D, %Y %H:%i:%s') as `readable`
FROM
    `your_table`;

@Hanky웃Panky,非常感谢。我的英语还需要提高 :( - BlitZ
干杯,这没什么好难过的 :) - Hanky Panky

3
echo date("F d Y",strtotime("2013-09-30 01:16:06"))

1

类似于:

<?php
$date = '2013-09-30 01:16:06';
$convertDate = date('F jS, Y h:i:s', strtotime($date));
echo $convertDate;
?>

1
MySQL查询
 select UNIX_TIMESTAMP(datetime_field) as datetime_field from table;

PHP
echo date("F d Y", $datetime_field )

-1
使用 diffForHumans 函数:
Carbon\Carbon::parse($ts)->diffForHumans()

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接