gpt4 book ai didi

php - 按月和年的数据库结果

转载 作者:太空宇宙 更新时间:2023-11-03 12:21:23 25 4
gpt4 key购买 nike

我有一个 Joomla 3.1 站点,它将显示有关所做贡献的报告。报告应按月和年分组。我有一个代码可以从数据库中提取数据,但无法将每个月放入一个单独的 <div> 中。每年都变成 parent <div>到它的月份。它是如何完成的?这是我的代码。

<?php 
$db = JFactory::getDbo();
$query = $db->getQuery(true);

$query->select(array($db->quoteName('contribution_date'), $db->quoteName('contribution_amount'), $db->quoteName('source')));
$query->from($db->quoteName('contribution'));

$db->setQuery($query);

$results = $db->loadObjectList();
?>

<table class='financial-reports'><th>aaa</th><th>bbb</th><th>ccc</th>
<?php
foreach ( $results as $result) {
echo '<tr>' . '<td class="fin-rep-date">' . JFactory::getDate($result->contribution_date)->format('d M, Y') . '</td>' .
'<td class="fin-rep-sum">' . $result->contribution_amount . ' ' .'руб.' . '</td>' .
'<td class="fin-rep-source">' . $result->source . '</td>' . '</tr>';
}
?>
</table>

最佳答案

我认为最简单的方法是将结果转换为多维数组,如下所示:

foreach ($results as $result) {
$resultsArray[JFactory::getDate($result->contribution_date)->format('Y')][JFactory::getDate($result->contribution_date)->format('M')][] = $result;
}

然后你就可以像这样使用它了:

<?php foreach ($resultsArray as $year) : ?>
<div>
<?php foreach ($year as $month) : ?>
<div>
<?php foreach ($month as $item) : ?>
<div>YOUR OUTPUT <?php echo $item->contribution_date; ?></div>
<?php endforeach; ?>
</div>
<?php endforeach; ?>
</div>
<?php endforeach; ?>

关于php - 按月和年的数据库结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19855225/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com