У меня есть массив, который содержит такие значения:
$items_pool = Array (
[0] => Array ( [id] => 1 [quantity] => 1 )
[1] => Array ( [id] => 2 [quantity] => 1 )
[2] => Array ( [id] => 72 [quantity] => 6 )
[3] => Array ( [id] => 4 [quantity] => 1 )
[4] => Array ( [id] => 5 [quantity] => 1 )
[5] => Array ( [id] => 7 [quantity] => 1 )
[6] => Array ( [id] => 8 [quantity] => 1 )
[7] => Array ( [id] => 9 [quantity] => 1 )
[8] => Array ( [id] => 19 [quantity] => 1 )
[9] => Array ( [id] => 20 [quantity] => 1 )
[10] => Array ( [id] => 22 [quantity] => 1 )
[11] => Array ( [id] => 29 [quantity] => 0 )
)
Далее, у меня есть форма, которую я пытаюсь заполнить. Он просматривает базу данных предметов, распечатывает все возможные предметы и проверяет те, которые уже присутствуют в $ items_pool.
<?php foreach ($items['items_poolpackage']->result() as $item): ?>
<input type="checkbox" name="measure[<?=$item->id?>][checkmark]" value="<?=$item->id?>">
<?php endforeach; ?>
Я знаю, что логически я пытаюсь достичь здесь, но я не могу понять программирование.
То, что я ищу, написано свободно, что-то вроде этого (не реальный код):
<input type="checkbox" name="measure[<?=$item->id?>][checkmark]" value="<?=$item->id?>" <?php if ($items_pool['$item->id']) { echo "SELECTED"; } else { }?>>
В частности, этот условный цикл проходит через массив, через все значения ключей (идентификатор) и, если есть совпадение, флажок установлен.
<?php if ($items_pool['$item->id']) { echo "SELECTED"; } else { }?>
Я понимаю из цикла, подобного этому, что это может означать много «дополнительной» обработки.
TL; DR - мне нужно выполнить цикл внутри массива, проверить ключ 'id', а затем напечатать строку.