我正在尝试格式化MySQL格式的日期(YYYY-MM-DD)并希望显示月份和年份,例如“2012年9月”。
我的代码:
<?php echo htmlspecialchars($row["date"], ENT_QUOTES, "UTF-8"); ?>
有谁知道我怎么能做到这一点?
答案 0 :(得分:5)
直接从SQL中选择该格式,例如
SELECT DATE_FORMAT(date, '%M %Y') AS formatted_date
或者在php中执行(效率稍差):
$formatted = date('F Y', strtotime($row['date']));
答案 1 :(得分:1)
您可以使用DateTime
格式化日期:
$date = DateTime::createFromFormat('Y-m-d', $row["date"]);
echo htmlspecialchars($date->format('F Y'), ENT_QUOTES, "UTF-8");
所以这样的日期:
$row['date'] = '2012-09-25';
September 2012
答案 2 :(得分:1)
echo date('F Y', strtotime($row['date']));
答案 3 :(得分:1)
您可以使用日期时间:
$date = date_create($row["date"]);
echo date_format($date, 'F Y');
答案 4 :(得分:0)
您需要使用SQL函数DATE_FORMAT (date, format)
答案 5 :(得分:0)
如果要将其保存为要多次使用的新变量:
$datetime = strtotime($row['date']);
$mysqldate = date("M d ", $datetime);
echo $mysqldate;