【发布时间】:2010-08-17 21:01:30
【问题描述】:
我认为这是一个简单的问题。我们有一个带有DATE 字段的 MySQL 数据库,日期以美国格式存储 (2010-06-01)。
在我将显示日期的 PHP 页面中,我只想将此日期转换为英国格式 (01-06-2010)。
感谢任何帮助和建议!
谢谢,
荷马。
【问题讨论】:
我认为这是一个简单的问题。我们有一个带有DATE 字段的 MySQL 数据库,日期以美国格式存储 (2010-06-01)。
在我将显示日期的 PHP 页面中,我只想将此日期转换为英国格式 (01-06-2010)。
感谢任何帮助和建议!
谢谢,
荷马。
【问题讨论】:
【讨论】:
DATE 格式为 'YYYY-MM-DD' (dev.mysql.com/doc/refman/5.6/en/datetime.html)。因此,如果 2010-06-01 是 MySQL DATE,则表示 2010 年 6 月 1 日(因此 01-06-2010 是 DD-MM-YYYY)。
您可以直接从 mysql 使用 DATE_FORMAT() 函数来完成。
例如:“SELECT DATE_FORMAT(date_column,'%d-%m-%Y') as my_formated_date;”会做你需要的,只要确保在 fetch 方法 my_formated_date 列中使用
【讨论】:
你可以用这个函数解析日期:
http://php.net/manual/en/function.strtotime.php
它将返回一个整数,即自 1970 年以来的秒数(称为 Unix 时间戳)。
然后使用此函数以任何您喜欢的方式格式化该数字:
【讨论】:
您还可以使用 DateTime::createFromFormat 功能在 PHP 中创建 Date 对象。
<?php
$date = DateTime::createFromFormat('Y-m-d', $sql_date);
echo $date->format('d-m-Y');
?>
【讨论】: