我有存储在mysql数据库中的登录数据。根据这些数据,我成功地将每个月的登录信息按性别分组。例如,1月份有1400名男性用户和1500名女性用户登录。
现在我正努力在表格中显示数据。
目前,我将其设置为:
<div role="tabpanel" class="tab-pane fade active in" id="tab_content1" aria-labelledby="home-tab">
<table id="datatable-fixed-header" class="table table-striped table-bordered">
<thead>
<tr>
<th>Month</th>
<th>Male Logins</th>
<th>Female Logins</th>
</tr>
</thead>
<tbody>
<?php
foreach ($maleLogin as $maleLog){
$mthDateTime = DateTime::createFromFormat('n', $maleLog->month);
foreach ($femaleLogin as $femaleLog) {
?>
<tr>
<td><?php echo $mthDateTime->format('F').' '.$maleLog->year; ?></td>
<td><?php echo $maleLog->count;?></td>
<td><?php echo $femaleLog->count;?></td>
</tr>
<?php } }?>
</tbody>
</table>
</div>
问题在于我的嵌套for循环。目前,它是这样显示数据的。
3条答案
按热度按时间euoag5mw1#
我相信这对你有用。它利用
$key => $value
形式foreach
.$key
用于获取所需的女性计数值。只有当两个数据集的记录数完全相同并且排序完全相同时,这种方法才有效。
注意:我对控制结构使用替代语法是因为这是一种习惯,而且在我看来,在跳入和跳出php处理器时更容易阅读。同样地,我使用
<?=
而不是<?php echo
因为打字要少很多。disbfnqx2#
对于嵌套循环中存在的每个女性登录,您将多次显示每个男性登录。可能只使用1 foreach循环并显示所有信息,即使0?
…一些类似的东西。不过,上面的sql语句可能是您的最佳选择。。。
mrfwxfqh3#
问题是,对于每一个男性,你都要遍历每一个女性,我建议使用某种sql查询,根据日期连接男性和女性
一些类似的东西