在一个布局中合并两个forech


merge two foreach in one layout

我有两个数组

from results i want to make a table with foreach

但是我不知道如何使它在一个表行工作。

这是我得到的

<table>
<?php foreach ($appky as $appka) : ?>
<tr class="counter_apps" height="20px"  >
<td width="40%"><?php echo $appka->name; ?></td>
<td width="20%"><?php echo $appka->all_items;?></td>
<td width="20%"><?php echo $appka->published; ?></td>
<td width="20%"><?php echo $appka->unpublished; ?></td>
</tr>
<?php endforeach;  ?>
</table>
<table>
<?php foreach ($applications as $application) : ?>
<tr><td><?php echo $application->name; ?></td></tr>
<?php endforeach; ?>  
</table>

所以我想要的只是在第一个表中添加另一列$application->name;

我在这里错过了什么?由于

<table>
<?php 
$count = count($appky);
for($i=0; $i< $count; $i++) { ?>
    <tr class="counter_apps" height="20px"  >
    <td width="40%"><?php echo $appky[$i]->name; ?></td>
    <td width="20%"><?php echo $appky[$i]->all_items;?></td>
    <td width="20%"><?php echo $appky[$i]->published; ?></td>
    <td width="20%"><?php echo $appky[$i]->unpublished; ?></td>
    <td width="20%"><?php echo $applications[$i]->name; ?></td>
</tr>
<?php }  ?>
</table>

for代替foreach

<table>
<?php for($i=0 ; $i<count($appky) ; $i++ ) { ?>
    <tr class="counter_apps" height="20px"  >
    <td width="40%"><?php echo $appka[$i]->name; ?></td>
    <td width="20%"><?php echo $appka[$i]->all_items;?></td>
    <td width="20%"><?php echo $appka[$i]->published; ?></td>
    <td width="20%"><?php echo $appka[$i]->unpublished; ?></td>
    <td width="20%"><?php echo isset($applications[$i]) ? $applications[$i]->name : '' ; ?></td>
    </tr>
<?php }  ?>
</table>

假设您的两个数组不一定按顺序排列-如果您的$appka$application之间有一些匹配的数据,您可以尝试下面这样做:

<table>
<?php foreach ($appky as $appka) : ?>
<tr class="counter_apps" height="20px"  >
<td width="40%"><?php echo $appka->name; ?></td>
<td width="20%"><?php echo $appka->all_items;?></td>
<td width="20%"><?php echo $appka->published; ?></td>
<td width="20%"><?php echo $appka->unpublished; ?></td>
  <?php foreach ($applications as $application) : ?>
    <?php if ($appka->id == $application->id) { ?>
    <td><?php echo $application->name; ?></td>
    <?php } ?>
  <?php endforeach; ?> 
</tr>
<?php endforeach;  ?>
</table>

否则您将无法吐出正确的应用程序名称。上面的解决方案使用id字段,但是您可能有其他可以匹配的字段