Могу ли я изменить значение ключа коллекции laravel, как в массивах php? - PullRequest
0 голосов
/ 21 июня 2020

, например: -

foreach ($data as $key => $value) {

            $new_data[$value->attribute_id]['options'][$value->id] = $value->name; 
        }

Косвенная модификация перегруженного элемента App \ Attribute не дает мне этой ошибки.

хотя я решаю ее с помощью этого кода, но все же нужно понять, могу ли я изменить коллекцию, например, прямо указывая на ключ, как мы делаем в массиве, даже если в нем есть объект модели.

return collect($new_data)->transform(function ($value) use ($data){
         $value->options =  $data->reduce(function ($newattr_value,$attr_value) use($value) {
                if($attr_value['attribute_id'] == $value->id){
                    $newattr_value[$attr_value['id']] = $attr_value['name'];
                }
                return $newattr_value; 
            },[]); 
         return $value;
       });
...