您实际上非常接近。所需格式为:
[ 98 => ['company_id' => 129], 99 => ['company_id' => 130], 100 => ['company_id' => 131]]
这应该生成正确的数组:
$extra = array_map(function($companyId){ return ['company_id' => $companyId];}, $allCompanyIds);$data = array_combine($allPositionIds, $extra);$user->positions()->sync($data);


