search(['menu_id' => $menuId])->column('keyword'); $delData = array_diff($haveData, $data); $newData = array_diff($data, $haveData); if ($delData) { $this->dao->delete(['menu_id' => $menuId, 'keyword' => $delData]); } if ($newData) { $newData = array_map(function ($item) use ($menuId) { return ['menu_id' => $menuId, 'keyword' => $item]; }, $newData); $this->dao->saveAll($newData); } CacheService::redisHandler('system_menus')->clear(); return true; } /** * 获取关键词 * @param $menuId * @return array * @throws \ReflectionException * User: liusl * DateTime: 2024/12/25 上午10:04 */ public function getKeyword($menuId): array { return $this->search(['menu_id' => $menuId])->column('keyword'); } }