1

我有大型的单个 MongoDB 集合,我想为其每个字段添加一个时间戳。我这样做:

$automation = Automation::all();

foreach ($automation as $workflowindex => $workflow)
{
    foreach ($workflow['workflow'] as $itemindex => $items)
    {

        foreach ($items['subscribers'] as $index => $item)
        {
            foreach ($items as $name => $mail)
            {
                if ($name != 'subscribers') {
                    if ($mail['delay'] == "0" && $mail['delay_time'] == 'now') {

                        $automation[$workflowindex]['workflow'][$itemindex]['subscribers'][$index][$name] = round(time()/60)*60;
                        $automation->save();
                    }
                }
            }

        }
    }
}

但是,如果我尝试保存此集合,我会收到一条错误消息

间接修改 App\Automation 的重载元素无效

如果我使用该方法

Automation::all()->toArray();

我仍然无法保存,因为保存方法不适用于数组。是否有更好的选择来访问我的 foreach 循环中的字段?如果没有,那么我该如何保存这个集合?

4

0 回答 0