如何在复选框php数组中选中标记的常用元素

时间:2013-04-18 06:44:48

标签: php arrays

我有两个数组。
第二个数组$array2的元素将通过复选框显示。
我希望两个列表的公共元素都标记为已选中并且剩余未选中状态。

$array1 = array("a", "b");

$array2 = array("a", "b", "c", "d");

3 个答案:

答案 0 :(得分:3)

$common = array_intersect($array1, $array2);

printf('<input type="checkbox" %s ...>', in_array('a', $common) ? 'checked' : null);

答案 1 :(得分:0)

您可以在array2上使用循环,然后在array1中搜索(如果存在),然后选中该复选框。例如:

foreach ($array2 as $key => $value) {
  if (array_search($value,$array1) !== FALSE) {
    //$array2 element $value found in $array1
    echo "<input type='checkbox' name='$value' checked />";
  }
}

答案 2 :(得分:0)

foreach ($array2 as $value) {
  echo (array_search($value,$array1) !== FALSE) ? "<input type='checkbox' name='$value' checked /> $value </br>" : "<input type='checkbox' name='$value'  /> $value </br>";
}