根据值计算 foreach 中的行数
count rows in foreach based on value
大家好,
我在 project table 需要帮助
我有一个名为 projects 的 table,我想在 foreach 中使用 php 基于 country_id 列来计算项目...可能吗?
但是我使用的是 cakephp 旧版本 1.2 ...
我试过这段代码:
<table>
<tr>
<th>Country </th>
<th>Country Name</th>
<th>Number of Place</th>
</tr>
<?php
$count_country =0;
$country_count_each=0;
foreach ($projects as $project){
$country_count_each = $project['Project']['country_id'];
if($project['Project']['country_id']==$country_count_each){
$count_country+=$country_count_each;
?>
<tr>
<td style="width: 30%"><?php echo $project['Project']['country_id']; ?></td>
<td style="width: 30%"><?php echo 'Country Name'.$tt; ?></td>
<td style="width: 30%"><?php echo $count_country; ?></td>
</tr>
<?php
}
}
?>
</table>
您需要遍历整个数组并首先获取所有计数。您可以将它们放入关联数组中:
$country_counts = [];
foreach ($projects as $project) {
$country = $project['Project']['country_id'];
if (isset($country_counts[$country])) {
$country_counts[$country]++;
} else {
$country_counts[$country] = 1;
}
}
?>
<table>
<tr>
<th>Country </th>
<th>Country Name</th>
<th>Number of Place</th>
</tr>
<?php
foreach ($projects as $project) {
?>
<tr>
<td style="width: 30%"><?php echo $project['Project']['country_id']; ?></td>
<td style="width: 30%"><?php echo 'Country Name'.$tt; ?></td>
<td style="width: 30%"><?php echo $country_counts[$project['Project']['country_id']]; ?></td>
</tr>
<?php
}
?>
</table>
大家好, 我在 project table 需要帮助 我有一个名为 projects 的 table,我想在 foreach 中使用 php 基于 country_id 列来计算项目...可能吗? 但是我使用的是 cakephp 旧版本 1.2 ...
我试过这段代码:
<table>
<tr>
<th>Country </th>
<th>Country Name</th>
<th>Number of Place</th>
</tr>
<?php
$count_country =0;
$country_count_each=0;
foreach ($projects as $project){
$country_count_each = $project['Project']['country_id'];
if($project['Project']['country_id']==$country_count_each){
$count_country+=$country_count_each;
?>
<tr>
<td style="width: 30%"><?php echo $project['Project']['country_id']; ?></td>
<td style="width: 30%"><?php echo 'Country Name'.$tt; ?></td>
<td style="width: 30%"><?php echo $count_country; ?></td>
</tr>
<?php
}
}
?>
</table>
您需要遍历整个数组并首先获取所有计数。您可以将它们放入关联数组中:
$country_counts = [];
foreach ($projects as $project) {
$country = $project['Project']['country_id'];
if (isset($country_counts[$country])) {
$country_counts[$country]++;
} else {
$country_counts[$country] = 1;
}
}
?>
<table>
<tr>
<th>Country </th>
<th>Country Name</th>
<th>Number of Place</th>
</tr>
<?php
foreach ($projects as $project) {
?>
<tr>
<td style="width: 30%"><?php echo $project['Project']['country_id']; ?></td>
<td style="width: 30%"><?php echo 'Country Name'.$tt; ?></td>
<td style="width: 30%"><?php echo $country_counts[$project['Project']['country_id']]; ?></td>
</tr>
<?php
}
?>
</table>