Q:

Высчитать сколько процентов занимает 1 пункт из общего числа

Есть массив, в котором записаны цифры.  В массиве много элементов, но вывожу я только 10. 
Делаю так:
$mp=0; 
foreach ($newIDs2 as $key => $value) { 
    $mp++;
    if ($mp <= 10) {
       //вывожу число ($value)
    }
}

На выходе получаю так:
5
5
5
и т.д. 

То есть получается что каждое число занимает 33.3% 
Как на выходе получить такое:
5 - 33.3
5 - 33.3
5 - 33.3

Но чтобы считало % правильно, так как значения не всегда будут = 5, они всегда разные

A:

Если найти процент от всех чисел, то :
$mp = 0; 
$data = [];
$sum = 0;

foreach ($newIDs2 as $key => $value)
{ 
    if ($mp < 10) {
        $data[] = $value;
    }

    $sum += $value;
    $mp++;
}

foreach($data as $value) {
    echo $value.' - ' .round(($value / $sum * 100), 2).'%'.  PHP_EOL;
}

Вариант 2
$sum = array_sum($newIDs2);

$length = count($newIDs2);
if($length>10){
   $length = 10;
}

for($i=0; $i<$length; $i++) {
    echo newIDs2[$i].' - ' .round((newIDs2[$i] / $sum * 100), 2).'%'.  PHP_EOL;
}

