数组推送到对象数组
Array Push to Array of Objects
我有一个这种格式的数组;
// echo '<pre>' . var_export($this->viewableFields, true) . '</pre>';
array (
0 =>
(object) array(
'formId' => '4',
'componentId' => '-7',
'viewable' => '1',
'searchable' => '0',
'editable' => '0'
),
1 =>
(object) array(
'formId' => '4',
'componentId' => '-4',
'viewable' => '1',
'searchable' => '1',
'editable' => '0'
)
)
我正在从 mysql 数据库中选择一些数据,我需要将其添加到数组中。我想添加 group = Registered
,因此输出将如下所示;
// echo '<pre>' . var_export($this->viewableFields, true) . '</pre>';
array (
0 =>
(object) array(
'formId' => '4',
'componentId' => '-7',
'viewable' => '1',
'searchable' => '0',
'editable' => '0',
'group' => 'Registered'
),
1 =>
(object) array(
'formId' => '4',
'componentId' => '-4',
'viewable' => '1',
'searchable' => '1',
'editable' => '0',
'group' => 'Registered'
)
)
我尝试了以下方法,但它只是在数组的末尾创建了另一个项目(编号 [2])。
$group = (object) array(
'group' => 'Registered'
);
array_push($this->viewableFields, $group);
请注意,我无法修改 SQL。
假设$this->viewableFields
是你的更宽数组,你可以使用array_walk()
原位修改数组。
array_walk($this->viewableFields, function(&$arr) {
$arr->group = 'Registered';
});
我有一个这种格式的数组;
// echo '<pre>' . var_export($this->viewableFields, true) . '</pre>';
array (
0 =>
(object) array(
'formId' => '4',
'componentId' => '-7',
'viewable' => '1',
'searchable' => '0',
'editable' => '0'
),
1 =>
(object) array(
'formId' => '4',
'componentId' => '-4',
'viewable' => '1',
'searchable' => '1',
'editable' => '0'
)
)
我正在从 mysql 数据库中选择一些数据,我需要将其添加到数组中。我想添加 group = Registered
,因此输出将如下所示;
// echo '<pre>' . var_export($this->viewableFields, true) . '</pre>';
array (
0 =>
(object) array(
'formId' => '4',
'componentId' => '-7',
'viewable' => '1',
'searchable' => '0',
'editable' => '0',
'group' => 'Registered'
),
1 =>
(object) array(
'formId' => '4',
'componentId' => '-4',
'viewable' => '1',
'searchable' => '1',
'editable' => '0',
'group' => 'Registered'
)
)
我尝试了以下方法,但它只是在数组的末尾创建了另一个项目(编号 [2])。
$group = (object) array(
'group' => 'Registered'
);
array_push($this->viewableFields, $group);
请注意,我无法修改 SQL。
假设$this->viewableFields
是你的更宽数组,你可以使用array_walk()
原位修改数组。
array_walk($this->viewableFields, function(&$arr) {
$arr->group = 'Registered';
});