Php 如何为模型对象键(数组)赋值

Php 如何为模型对象键(数组)赋值,php,yii2,active-form,Php,Yii2,Active Form,我将Yi2与ActiveFrom一起使用。我有一个用户的形式,添加多个名字,电子邮件等 例如: echo $form->field($model, "name[$i]")->widget(kartik\select2\Select2::classname(), [ 'data' => $name_master, 'options' =&

我将Yi2与
ActiveFrom
一起使用。我有一个用户的形式,添加多个名字,电子邮件等

例如:

echo $form->field($model, "name[$i]")->widget(kartik\select2\Select2::classname(), [
                                    'data' => $name_master,
                                    'options' => ['placeholder' => 'Select drop down', 'multiple' => false, 'class' => 'selectpicker form-control'],
                                ])->label(false);
我可以在添加时保存该值。但当我试图以编辑形式打开它并为模型键赋值时,我得到了一个错误

为编辑模式的键指定值

foreach ($namesDump as $val) {
    $objectKey = "name";
    $model->$objectKey[$index] = $val['name'];
}

这是一个给我的错误。有人能告诉我如何将值分配给数组形式的对象键。

您可能应该使用
{}
来指示属性名的优先级-它根据PHP版本的不同而不同:

$model->{$objectKey}[$index] = $val['name'];
为什么$objectKey=“name”;?你有什么错误?