首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将日期时间转换为人类可读的日期

问将日期时间转换为人类可读的日期
EN

Stack Overflow用户
提问于 2012-09-06 01:12:44
回答 3查看 9.3K关注 0票数 4

我正在尝试将DATETIME转换成人们可以实际使用的东西。这是日期:

代码语言:javascript
复制
2013-09-05 11:52:10

我使用的是:

代码语言:javascript
复制
date("D, d M Y", '2013-09-05 11:52:10');

正在转变为:

代码语言:javascript
复制
Thu, 01 Jan 1970

对我来说没什么意义。

EN

回答 3

Stack Overflow用户

发布于 2012-09-06 01:15:58

您需要将日期转换为时间戳,然后再将其传递给date()

代码语言:javascript
复制
$time = strtotime('2013-09-05 11:52:10');
echo date("D, d M Y", $time);
票数 7
EN

Stack Overflow用户

发布于 2012-09-06 01:14:28

这应该是PHP代码吗?如果是这样,正确的方法是

代码语言:javascript
复制
date("D, d M Y", strtotime('2013-09-05 11:52:10'));

如果这与MySql有关,则使用的正确函数是DATE_FORMAT (但是,您得到的是无效的MySql语法)。请澄清。

票数 4
EN

Stack Overflow用户

发布于 2012-09-06 01:20:13

PHP的date()函数只能处理整数时间戳值;它不能将字符串作为输入处理。

如果需要从一种字符串日期格式转换为另一种字符串日期格式,则应使用DateTime::CreateFromFormat()方法:

代码语言:javascript
复制
$dateObj = DateTime::CreateFromFormat($inputString);
$outputString = $dateObj->Format('D, d M Y');

但是,我建议您编写查询时使用MySQL的UNIX_TIMESTAMP()函数将日期作为date()函数可以处理的数字时间戳放入PHP:

MySQL:

代码语言:javascript
复制
SELECT UNIX_TIMESTAMP(yourDateField) as yourDateField_timestamp FROM yourTable ...

然后,您就可以完全按照自己的意愿编写PHP:

PHP:

代码语言:javascript
复制
$dateObj = date('D, d M Y', $row['yourDateField_timestamp']);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12286525

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档