calculateSum($gpc); $gpcBasic = $gpcSum - ($gpc->i_4_4 ?? 0) - ($gpc->ii_3_3 ?? 0) - ($gpc->ii_4_3 ?? 0); $gpc->gpc_basic = $gpcBasic; } private function calculateSum(ActivityGpcOutput $gpc) { $fieldsToSum = [ 'i_1_1', 'i_1_2', 'i_1_3', 'i_2_1', 'i_2_2', 'i_2_3', 'i_3_1', 'i_3_2', 'i_3_3', 'i_4_1', 'i_4_2', 'i_4_3', 'i_4_4', 'i_5_1', 'i_5_2', 'i_5_3', 'i_6_1', 'i_6_2', 'i_6_3', 'i_7_1', 'i_8_1', 'ii_1_1', 'ii_1_2', 'ii_1_3', 'ii_2_1', 'ii_2_2', 'ii_2_3', 'ii_3_1', 'ii_3_2', 'ii_3_3', 'ii_4_1', 'ii_4_2', 'ii_4_3', 'ii_5_1', 'ii_5_2', 'ii_5_3', 'iii_1_1', 'iii_1_2', 'iii_1_3', 'iii_2_1', 'iii_2_2', 'iii_2_3', 'iii_3_1', 'iii_3_2', 'iii_3_3', 'iii_4_1', 'iii_4_2', 'iii_4_3', 'iv_1', 'iv_2', 'v_1', 'v_2', 'v_3', 'vi_1', 'credits_i', 'credits_ii', 'credits_iii', 'credits_iv', 'credits_v', 'credits_vi', ]; $sum = 0; foreach ($fieldsToSum as $field) { $sum += $gpc->$field ?? 0; } return $sum; } }