我希望以这种格式(使用PHP)读取单日,月和年,而不添加3个额外的MySQL行:
day: 01
month: Jan, Feb, Mar..(first three letters)
year: 2011
这是表和PHP脚本,我现在使用它:
我用PHP添加日期:
mysql_query("INSERT INTO news (...,`time`) VALUES (...'".date(d.".".m.".".Y)."');");
我用以下内容阅读:
$query = "SELECT * FROM news";
$result = mysql_query ($query);
while ($row = mysql_fetch_assoc ($result)) {
echo $row['time'];
}
MySQL表:
news:
time(text):
"27.03.2011"
答案 0 :(得分:1)
你可以用PHP做,检查strftime function或在SELECT中使用
SELECT DAY(date) as day, MONTH(date) as month, YEAR(date) as year FROM table
并在php中你将它视为$ result ['day']。 $ result ['month']等SELECT查询中的“日期”当然是您存储日期的列的名称。我会推荐strftime
答案 1 :(得分:1)
您可以使用MONTH(),DAY(),YEAR()Mysql函数。,即
SELECT MONTH(`time`) AS `month`, DAY(`time`) AS `day`, YEAR(`time`) AS `year` FROM `news` [...]
答案 2 :(得分:1)
查询应该是:
mysql_query("INSERT INTO news (...,`time`) VALUES (...'".date(d.".".M.".".Y)."');");
M而不是m为您提供当月的3个字母的文字表示。
获取:
while ($row = mysql_fetch_assoc ($result)) {
echo date( 'd', strtotime( str$row['time'] ) );
echo date( 'M', strtotime( str$row['time'] ) );
echo date( 'Y', strtotime( str$row['time'] ) );
}
了解更多信息:
答案 3 :(得分:0)
SELECT *, substring(1,2) as day, substring(4,2) as month, substring(7) as year FROM table
您也可以(并且应该)使用date
表格式并使用DAY()
,MONTH()
,YEAR()
函数
答案 4 :(得分:0)
您应该在mysql表中使用DATETIME
列。然后,MySQL负责以自己的内部格式存储日期,您可以以任何所需的格式检索它。
要插入当前日期,您可以简单地
INSERT INTO news (...,`time`) VALUES (...,NOW())
要以您想要的格式检索它,请使用
SELECT DATE_FORMAT(`time`, '%d.%b.%Y');