$item['code'], 'pid' => 0, 'name' => $item['name'], 'level' => 1, ]; if (isset($item['children'])) { foreach ($item['children'] as $item1) { $result[] = [ 'id' => $item1['code'], 'pid' => $item['code'], 'name' => $item1['name'], 'level' => 2 ]; } if (isset($item1['children'])) { foreach ($item1['children'] as $item2) { $result[] = [ 'id' => $item2['code'], 'pid' => $item1['code'], 'name' => $item2['name'], 'level' => 3 ]; } if (isset($item2['children'])) { foreach ($item2['children'] as $item3) { $result[] = [ 'id' => $item3['code'], 'pid' => $item2['code'], 'name' => $item3['name'], 'level' => 4 ]; } } } } } $table = $this->table('area'); $table->insert($result)->saveData(); } }