Итерируйте по всем категориям, имеющимся в БД и для каждой из них синхронизируйте либо пришедшие с запросом идентификаторы, либо пустой массив.
$input = $request->get('category', []);
foreach (Category::all() as $category) {
$category->roles()->sync(Arr::get($input, $category->id, []));
}
Старайтесь рассуждать о задаче для начала простым человеческим языком, тогда решение зачастую будет становиться очевидным. А потом уже его превращать в in_array(), foreach и так далее.
Ну и терминология важна, я уже вам об этом говорил. Слова "значения", "данные", "реквест" слишком общие и в них легко запутаться. Если бы я не видел ваши предыдущие вопросы, я бы в этом ничего не понял.