У меня есть 2 многомерные массивы $investmentProgramExistingCriteriaoutput
и $criteria
, которые при печати (print_r) производит следующий вывод:порождающие флажков для определенного ключа в многомерном массиве
Массив $ investmentProgramExistingCriteriaoutput:
Array
(
[0] => Array
(
[key1] => 1
[key2] => 4
[criteriaID] => 25
)
[1] => Array
(
[key1] => 2
[key2] => 4
[criteriaID] => 26
)
)
массив долл. США:
Array
(
[0] => Array
(
[criteriaID] => 27
[key3] => 1
[key4] => Some value
[key5] => Yes
[key6] => 3
[key7] => 1
)
[1] => Array
(
[criteriaID] => 25
[key3] => 5
[key4] => Some other value
[key5] => 1, 2, 3
[key6] => 1
[key7] => 1
)
[2] => Array
(
[criteriaID] => 26
[key3] => 1
[key4] => Some different value
[key5] => Ναί
[key6] => 1
[key7] => 1
)
)
Я пытаюсь создать флажки для каждого элемента в массиве $criteria
. Однако, если criteriaID
в массиве $criteria
существует в массиве $investmentProgramExistingCriteriaoutput
, флажок должен быть проверен, если нет, его следует отключить.
Я пытаюсь сделать это с помощью следующего кода:
foreach ($criteria as $val) {
foreach ($investmentProgramExistingCriteria as $existingcriteria) {
if($val['criteriaID'] == $existingcriteria['criteriaID']) {
echo "<input type='checkbox' name='criteria[]' value=".$val['criteriaID']." style='margin-bottom:20px;float:left;' checked='checked' /> ";
echo "<span style='line-height:20px;'>".$val['criteriaDescription'] ."</span><br /><br />";
} else {
echo "<input type='checkbox' name='criteria[]' value=".$val['criteriaID']." style='margin-bottom:20px;float:left;' /> ";
echo "<span style='line-height:20px;'>".$val['criteriaDescription'] ."</span><br /><br />";
}
}
}
Как видно из приведенных выше значений массива, я должен получить 3 флажков, из которых 2 должны быть проверены. Однако этот код напечатать 6 флажков вместо 3,
2 из 6 напечатанных флажков отмечены флажками (правильно). Как я могу избавиться от двойных флажков?
Мне просто нужно было заменить $ val $ a и работать как шарм. Благодарю. – user2417624
Упс, не заметил, что когда я отправил - парень, теперь это все ticketyboo! – RamRaider