Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从2个数组中选择多个选择框_Php_Arrays - Fatal编程技术网

Php 从2个数组中选择多个选择框

Php 从2个数组中选择多个选择框,php,arrays,Php,Arrays,如何从2个阵列创建多个选择框 第一个数组包含所有值,第二个数组包含将在多选中标记为选中的值 $a=array[1,2,3,4,5,6,7,8]; $b=array[3,7,8]; 多重选择框将包含来自数组$a的所有值,但将选择来自数组$b的值。 有什么方法可以实现这一点吗?您可以使用此代码 $a=array(1,2,3,4,5,6,7,8); $b=array(3,7,8); $selected=""; foreach($a as $val) { if(in_array($val,$b

如何从2个阵列创建多个选择框 第一个数组包含所有值,第二个数组包含将在多选中标记为选中的值

$a=array[1,2,3,4,5,6,7,8];
$b=array[3,7,8];
多重选择框将包含来自数组
$a
的所有值,但将选择来自数组
$b
的值。
有什么方法可以实现这一点吗?

您可以使用此代码

$a=array(1,2,3,4,5,6,7,8);
$b=array(3,7,8);
$selected="";
foreach($a as $val)
{
    if(in_array($val,$b))
    {
        $selected = 'selected="selected"';
    }

    //Code for create multi select drop down and echo $selected in option like

    <option $selected value="" ></option>
}
$a=数组(1,2,3,4,5,6,7,8);
$b=数组(3,7,8);
$selected=“”;
外汇($a作为$val)
{
if(在数组中($val,$b))
{
$selected='selected=“selected”';
}
//创建多选下拉列表和回显选项中的$selected的代码,如
}
$a=数组(1,2,3,4,5,6,7,8);
$b=数组(3,7,8);
$html='';
外汇($a作为$val)
{
$selected=(在数组中($val,$b))?“selected”:“;
$html.=''.$a';
}
$html.='';
echo$html;

不工作,在第一次匹配后选择所有值,即3如果将整个
结构替换为
$selected=(在数组中($val,$b)?“selected=”selected“:”
foreach
循环和
in_array
调用应该会得到您想要的结果
$a=array(1,2,3,4,5,6,7,8);
$b=array(3,7,8);
$html = '<select multiple>';
foreach($a as $val)
{
    $selected = (in_array($val,$b)) ? 'selected' : '';
    $html .= '<option value="' . $a . '"' . $selected . '>' . $a . '</option>';
}
$html .= '</select>';
echo $html;