yii2 中的复选框列表

CheckBox List in yii2

我有这个:

<?php $form = ActiveForm::begin([
    'id' => 'search-form',
    'method' => 'get',
    'action' => ['/directory/index'],
    'options' => ['class' => 'form-horizontal'],
    'enableAjaxValidation' => false,
    'enableClientValidation' => true,
    'validateOnBlur' => false,
]); ?>

.........................................................

<?php foreach ($model->my_getStatusOptions() as $value => $title): ?>
    <label class="custom-control custom-checkbox">
            <?= Html::activeCheckbox($model, 'status', [
                 'class' => 'custom-control-input',
                  'value' => $value,
                   'label' => false,
                   'uncheck' => false,
                  ]) ?>
                  <span class="custom-control-label">
                    <?= $title ?>
                  </span>
    </label>
<?php endforeach; ?>



........................................................

<?php ActiveForm::end(); ?>

这就是 my_getStatusOptions() 函数 returns:

<?php print_r($model->my_getStatusOptions()); ?>
Array ( [0] => value0 [1] => value1 [2] => value2 [3] => value3 [4] => value4 [5] => value5 )

我需要根据选中的复选框在数据库中搜索,我遇到了这个问题: 选择多个 "status" 复选框后,当我按下提交按钮时,只有第一个选中的复选框保持选中状态。

在相同的表单中,我有另一个复选框,如下所示,当按下提交按钮时,复选框保持其值(checked/unchecked)

<?= $form->field($model, 'online')->checkbox() ?>

您需要像下面这样使用activeCheckboxList

<?= Html::activeCheckboxList($model, 'status', $model->my_getStatusOptions())