我想通过一个表迭代2个数组的信息。两个表都有一个相同的“建筑”行,对于表格的一个单元格,我想比较这些行的内容。我的代码如下:迭代和比较2阵列
<?php
$sql = "SELECT b.building, a.building FROM cms_TABLE_B b, cms_TABLE_A a WHERE a.building = b.building";
$result = $database->query($sql);
$availabilities[] = $database->fetch_array($result);
?>
<?php foreach ($TABLE_ARecords as $record): ?>
<div class="table-row">
<div class="property"><span><?php echo htmlencode($record['address']) ?></span></div>
<div class="availabilities"><span><?php if(in_array($record['building'], $availabilities)) { echo "success"; } else { echo "fail"; } ?></span></div>
</div>
<?php endforeach ?>
我试图从TABLE_A“建设”的内容,并检查它是否从表-B“建设”的内容相匹配。最终,如果内容匹配,我想计算他们拥有的匹配数量并将其显示在表格单元格中。我不认为我会以正确的方式进行讨论,因为$ availabilities数组甚至没有正确的信息 - 但使用while会导致表重复其自身。我不想显示来自TABLE_B的任何信息,我只想引用TABLE_A并显示一个计数。
好吧,如果你已经有了你需要在数组中的建筑物,你可以在php中使用count函数来查看有多少(count($ array))。如果您不需要关于建筑物的全部信息,但仅需要匹配的数量,则应在查询中对它们进行计数,并仅返回该数字。SELECT count(*)FROM cms_TABLE_B b,cms_TABLE_A a WHERE a.building = b。建设 –