php - 我们如何将值分配给作为数组的模型对象键
问题描述
我正在使用 Yii2 和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'];
推荐阅读
- linux - R-Car M3 MMC 初始化失败
- docker - 死容器对 open-shift 集群有什么影响?
- sql-server - 在 Tableau Desktop 中以灰色方式发布数据源
- javascript - DataTables.js - 动态更改列优先级
- javascript - Quill Editor - 无法在其他 Div 的编辑器中显示内容
- google-cloud-platform - 如何更新同名的 GCE 镜像?
- shell - 检查ftp服务器上是否存在目录或文件,如果不存在则放置
- java - JPA 2.1 和 Hibernate 中的查询缓存
- c++ - 我的代码结果为零,我不知道为什么
- python - 将新字符串动态附加到现有字符串