有十几种方法来修饰这只猫,但我的方法可能就是这样(所有粗略的代码片段,而不是完整的实现)
一,查询
select `name`
, month(`date`) as date_month
, year(`date`) as date_year
from [Table]
order by `date` desc
Run Code Online (Sandbox Code Playgroud)
然后,将数据组织到所需的逻辑组中
$templateData = array();
foreach ( $rows as $row )
{
$templateData[$row->date_year][$row->date_month][] = $row->name;
}
Run Code Online (Sandbox Code Playgroud)
然后,在模板中
<?php foreach ( $templateData as $year => $months ) : ?>
<?php foreach ( $months as $month => $names ) : ?>
<h2><?php echo $month, ' ', $year; ?></h2>
<ul>
<?php foreach ( $names as $name ) : ?>
<li><?php echo $name; ?></li>
<?php endforeach; ?>
</ul>
<?php endforeach; ?>
<?php endforeach; ?>
Run Code Online (Sandbox Code Playgroud)