$data = array();
#Build an array of 'count' per year/week
foreach($mysql_results as $r) {
$data[$r['year']][$r['week']] = $r['count'];
}
#Loop through the $data variable, printing out the 'count' for each year in the array,
#and all 52 weeks that year
for($year = $year_min; $year <= $year_max; $year++) {
for($week=1; $week<=52; $week++) {
echo "$year $week {$data[$year][$week]}";
}
}
Обратите внимание, что year_low и year_high - переменные, неопределенные в текущем фрагменте, но они должны быть вам известны.
Кроме того, $ mysql_results должен быть массивом, содержащим все строки, возвращаемые базой данных.
Короче говоря, следующий код делает это:
- Создайте массив, сгруппированный по годам, а затем по неделям, содержащий значение 'count'
- Перебрать этот массив, отображая по порядку год, неделю и значение для счетчика, если оно есть