У меня есть следующий многомерный массив:
<? $array = array(0 => 2, 3 => 1, 5 => 1 );
Что выглядит при печати:
Array ( [0] => 2 [3] => 1 [5] => 1 ); //the value in brackets is the shoe size
Первая часть массива - это «размер обуви», а вторая часть массива - это число, имеющееся в инвентаре.
Я пытаюсь распечатать таблицу, в которой перечислены все размеры обуви (даже если ее нет в массиве), а затем перебрать, чтобы указать «количество, доступное» в инвентаре.
Вот что у меня есть, но не работает :
<?php
$array = array(0 => 2, 3 => 1, 5 => 1 );
print ('<table>');
print ('<thead><tr><th>Shoe Size</th>');
for ($i=3; $i<=12; $i += .50) {
print ('<th>'.$i.'</th>');
}
print('</tr></thead>');
print('<tbody><td>Total</td>');
foreach ($array as $shoe_size=>$number_in_inventory) {
for ($i=3; $i<=12; $i += .50) {
if ($i == $shoe_size) {
print('<td>'.$number_in_inventory.'</td>');
}
else {
print('<td>0</td>');
}
}
}
print("</tbody></table>");
Моя проблема в том, что у меня есть цикл foreach
AND for
, он выводит в два раза больше столбцов таблицы (<td>
) ).
Как мне лучше настроить этот код так, чтобы он только циклически проходил и правильно отображал столбцы один раз? Я довольно потерян на этом.
Большое спасибо!