我在网上找到了他们回答不同内容的地方,但我仍然不知道如何将其应用到我的代码中。
基本上我想在一个回波线中使用月份,在另一个回波中使用日期编号。
我的代码中有没有这样做?
<?php
// Connects to your Database
$data = mysql_query("SELECT id, title, description, location, date FROM Calendar")
or die(mysql_error());
while($row = mysql_fetch_array( $data ))
{
echo "<article>";
echo "<date>";
echo "<h3>" .$row['date(month)'] . "</h3>";
echo "<h4>" .$row['date(day)'] . "</h4>";
echo "</date>";
echo "</article>";
}
?>
答案 0 :(得分:4)
你应该能够直接通过strtotime日期:
$month = date('m', strtotime($row['date']));
$day = date('d', strtotime($row['date']));
但这取决于日期存储在数据库中的格式。这适用于TIMESTAMP
类型列或UNIX时间戳,或(大多数情况下)日期的字符串表示。
答案 1 :(得分:1)
这是一种在MySQL查询中提前获取它们的方法,作为稍后在PHP中解析它们的替代方法。
$data = mysql_query("SELECT id, title, description, location, DATE_FORMAT(date, '%m') AS `month`, DATE_FORMAT(date, '%d') AS `day` FROM Calendar")
or die(mysql_error());
然后访问它们:
while($row = mysql_fetch_array( $data ))
{
echo $row['month'];
echo $row['day'];
}
另外,要获取月份名称而不是数字,请使用DATE_FORMAT(date, '%M') as month
答案 2 :(得分:0)
首先获取日期的unix时间,然后格式化两个不同的字符串。
答案 3 :(得分:0)
如果您希望将日期作为月份的名称进行回显,则可以使用“F”。 像这样:
$ month = date('F',strtotime($ row ['dateRepaired']));