基于数组值设置复选框选中状态

时间:2012-06-06 19:25:37

标签: php html php-5.3

假设我最初在这样的页面上有一堆复选框输入:

<input type="checkbox" name="vehicle" value="Car" /> Car<br />
<input type="checkbox" name="vehicle" value="Bike" /> Bike<br />
<input type="checkbox" name="vehicle" value="Motorcycle" /> Motorcycle<br />
<input type="checkbox" name="vehicle" value="Bus" /> Bus<br />
<input type="checkbox" name="vehicle" value="Car" /> Train<br />

现在让我们说我有一个这样的数组:

$my_array = array(
    'first' => 'Bike', 
    'second' => 'Car', 
    'third' => 'Train'
);

如您所见,我的数组包含的值与我的复选框的值相对应。

现在,如何根据我的数组的值设置每个复选框输入的状态,并使用php在页面刷新时保持选中复选框?换句话说,我想在我的页面上显示所有复选框,但只应在页面上检查其值与我的数组中的值匹配的那些复选框。这可能只是直接PHP或我需要javascript吗?

请问好吗?我几乎没有尝试过任何事情

1 个答案:

答案 0 :(得分:6)

当然,你可以用PHP做到这一点......

<input type="checkbox" name="vehicle" value="Car" <?php if(in_array('Car', $my_array)) echo( 'selected = "selected"'); ?>/> Car<br />

冲洗并重复所有复选框。

但是,如果您还保留包含所有可能选项的数组,那将会更加智能。然后你可以迭代该数组并检查该数组中的每个条目,看看它是否也存在于你所选择的数组中。阵列。