我试过研究类似于我的问题的其他问题,但我没有找到任何具体解决此问题的任何问题。我使用mysqli选择数据并将其显示在表格中。 table_yard
列可以有多个值,所以我分解了这些值并将它们存储为一个数组以循环使用,然后将结果存储在变量$yard_name
中。我后来分配此变量为行中的我的表所示($get
正在存储SQL查询):Foreach Loop仅显示数组中的一个值
while ($row = mysqli_fetch_assoc($get)) {
$yards = explode(",", $row[table_yard]);
foreach ($yards as $yard) {
$yard_name = $yard . ", ";
}
$table_rows .= "<tr>
<td>" . mdy($row[table_date]) . "</td>
<td>" . $yard_name . "</td>
</tr>";
问题是,如果有该阵列在一个以上的值,则仅显示第一项。我跑$yards
调试,看是否有人甚至获得阵列中所有的值,它是,如下所示:
Array (
[0] => 711
[1] => 2793
[2] => 988
)
虽然,这是被显示在<td>
细胞:
711,
我希望它显示是这样的:
711, 2793, 988
我相信这是一个新手的错误,但我无法弄清楚。预先感谢您的任何帮助。
你覆盖'$ yard_name'变量,在foreach – Bankzilla 2015-01-26 22:22:43
的每一个循环为什么你不使用'$ yard_name =破灭(” ,“explode(”,“,$ row [table_yard]));' – Eugen 2015-01-26 22:28:39
$ yard_name。= $ yard。 “,”; – 2015-01-26 22:32:17