Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

shone83's avatar

Sum of percentage

I have two numbers that I get from relationships tables and I calculate percentage like this:

$settlement = Settlement::where('town_id', Auth::user()->town_id)
          ->with('members')
          ->where('reon_id', '1')
          ->count();
$members = Settlement::with('members')->whereHas('members', function($query) {
          $query->where('cipher_id', 0);
          })->where('town_id', Auth::user()->town_id)
          ->where('reon_id', '1')->count();
$percent_members = round(($members / $settlement ) * 100,1);

In this way, I get all settlements together with reon_id == 1 and all settlements together with reon_id == 1 and cipher_id == 0 and calculate the percentage.

But, I need one more variable which has sum of percentage of each settlement and members separately. For example:

$settlement1 = 6;
$member1 = 3;
$percent1 = round(($member1 / $settlement1 ) * 100,1);

$settlement2 = 9;
$member2 = 3;
$percent2 = round(($member2 / $settlement2 ) * 100,1);

$settlement3 = 12;
$member3 = 3;
$percent3 = round(($member3 / $settlement3 ) * 100,1);

$final_percentage = $percent1  + $percent2 + $percent3;

$final_percentage it should number 9 in this case.

How to get $final_percentage if I don't have each percentage separately?

0 likes
0 replies

Please or to participate in this conversation.