PHP рассчитать процент

Я пробовал много хитростей, чтобы рассчитать процент каждого значения в этом массиве, но не могу найти решение. Значения являются точками.
Спасибо.

<?php

$data = array(
'item1' => array(
'label'   => 'Label 1',
'value'   => 120
),
'item2' => array(
'label'   => 'Label 2',
'value'   => 90
),
'item3' => array(
'label'   => 'Label 3',
'value'   => 88
),
'item4' => array(
'label'   => 'Label 4',
'value'   => 19
)
);

?>

Последнее, что я попробовал, это следующее:

<?php

$percentages = array();
$total_items = count( $data );

foreach ( $data as $item ) {

foreach ( $item as $k => $v ) {

if ( $k == 'value' ) {

$percentages[] = ( $v / $total_items ) * 100;

}

}

}

?>

Надеюсь, что эта редакция даст вам больше информации о том, чего я пытаюсь достичь.

-1

Решение

Вам нужно будет сделать два прохода по данным, один для вычисления итогового значения, а затем следующий для вычисления процентных значений:

$total = 0;
$percentages=[];

foreach ( $data as $item )
$total += $item['value'];

foreach ( $data as $key=> $item )
$percentages[$key]= $item['value'] / ($total /100);

var_dump($percentages);

пример: http://codepad.viper-7.com/qAQ5YW

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]