是否可以更改date()的配置;那已经插入数据库了吗?
例如: 现在,日期按以下方式显示:2013年12月12日下午12:28
有没有办法只显示我从中选择的部分?比如“12 DEC”。
尝试在PHP中完成此操作。
谢谢!
答案 0 :(得分:1)
使用date()
功能。如果您正在尝试格式化数据库条目中的值,请获取它并使用strtoupper(date('j M',strtotime($row['column'])))
显示它(它将输出您正在寻找的格式并将所有内容大写,例如您提供的示例)
答案 1 :(得分:1)
不要将日期/时间值(特别是格式错误)存储为数据库中的字符串,因为您无法正常维护和查询数据。如果您以秒为单位存储Unix纪元时间,请使用适当的日期data types(DATETIME
,TIMESTAMP
甚至INT
。
您可以通过以下方式将数据类型从VARCHAR
更改为DATETIME
UPDATE table_name
SET column_name = STR_TO_DATE(column_name, '%M %D, %Y, %h:%i %p');
ALTER TABLE table_name CHANGE column_name column_name DATETIME;
这是 SQLFiddle 演示
现在,您可以通过date
列正确轻松地过滤和订购数据,例如:
SELECT *
FROM table_name
WHERE column_name >= '2013-12-17'
AND column_name < '2013-12-18'
ORDER BY column_name DESC;
现在,您可以使用DATE_FORMAT()
功能轻松地显示日期时间值,例如:
SELECT DATE_FORMAT(column_name, '%d %b') formatted_date
FROM table_name;
示例输出:
| FORMATTED_DATE | |----------------| | 17 Dec | | 18 Dec |
这是 SQLFiddle 演示
与此同时,如果您需要立即解决方案,您可以
SELECT DATE_FORMAT(STR_TO_DATE(column_name, '%M %D, %Y, %h:%i %p'), '%d %b') formatted_date
FROM table_name;
这是 SQLFiddle 演示
答案 2 :(得分:0)
要获取格式的日期,请尝试:
<?php
echo date('d M');
?>
但是,您需要更新表格中的每一行以更改其值。