我有一个mysql查询,在foreach循环中输出假期。例如。 2015年1月15日Steven假日,3月12日jim假日2月20日jon假期2016年1月10日jon假期等。如何列出一年中的所有月份而不仅仅是假期预订的月份?
div
我的想法是创建一个包含所有月份的数组,然后将此数组与包含来自mysql的所有数据的数组合并。我试过这个没有成功。任何帮助都会很棒。
答案 0 :(得分:1)
要列出所有月份,您只需要通过它们运行foreach
循环。在这种情况下无需合并:
$monthx = array('January', 'Febuary', 'March', 'April', 'May',
'June', 'July', 'August', 'September', 'October', 'November', 'December');
while ($row = mysqli_fetch_assoc($result)) {
$year = $row['year'];
$month = $row['month'];
$years[$year][$month][] = $row;
//print_r($something);
}
foreach($years as $year => $months) {
echo '<b>Year '.$year. '</b><br>';
foreach ($monthx as $month) {
echo '<b>Month '.$month. '</b><br>';
if (isset($months[$month]))
{
foreach($months[$month] as $item) {
echo $item['employee']. ' - ' .$item['startit'].' - '.$item['end'].'<br/>';
}
}
}
}