加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

将日期格式(在DB或输出中)更改为dd / mm / yyyy – PHP MySQL

发布时间:2020-12-13 21:28:13 所属栏目:PHP教程 来源:网络整理
导读:MySQL将日期存储在我的数据库中(默认情况下)为’YYYY-MM-DD’我日期的字段类型为’DATE'(我不需要任何时间存储)..是否有一种简单的方法可以默认更改它到DD / MM / YYYY? 我在两个不同的表中调用不同的日期,并且在我的任何代码中没有任何地方我有类似日期变
MySQL将日期存储在我的数据库中(默认情况下)为’YYYY-MM-DD’我日期的字段类型为’DATE'(我不需要任何时间存储)..是否有一种简单的方法可以默认更改它到DD / MM / YYYY?

我在两个不同的表中调用不同的日期,并且在我的任何代码中没有任何地方我有类似日期变量或任何东西的任何东西!希望这是一个直接的改变?

解决方法

在 PHP中,您可以:

>使用strtotime将日期转换为时间戳
>使用date格式化它

有点像这样,我会说:

$timestamp = strtotime($date_from_db);
echo date('d/m/Y',$timestamp);

但这只适用于1970年到2038年之间的日期,因为timestamps存储为32位整数,从1970-01-01算起.

在MySQL中,我认为date_format功能可以解决问题.
例如 :

mysql> select date_format(curdate(),'%d/%m/%Y');
+------------------------------------+
| date_format(curdate(),'%d/%m/%Y') |
+------------------------------------+
| 19/03/2010                         |
+------------------------------------+
1 row in set (0.03 sec)

并且,为了完整性,PHP中的另一个解决方案是不使用1970-2038的限制,而是使用DateTime类,特别是:

> DateTime::__construct解析数据库返回的日期
> DateTime::format将日期格式化为您想要的任何格式.

例如,这部分代码:

$date = new DateTime('2010-03-19');
echo $date->format('d/m/Y');

会得到你的输出:

19/03/2010

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读