0

以下のphpスクリプト(phpを使用した単純な水平棒グラフから)を使用して水平棒グラフを作成し、静的配列値をデータベース値に動的に置き換えています。これは、重複する値がある場合を除いて、うまく機能しています。棒グラフの重複する数値を正確にする必要がありますが、配列が原因で、重複する場合は「棒」の1つが失われます。

配列やforeachループを使用せずに、この長い手を書き直すことはできますか?

$values = array(
        $values['one'] => 'apples',
        $values['two'] => 'oranges',
        $values['three'] => 'pears',
    $values['four'] => 'bananas'
);

// Find the maximum percentage
$max = max(array_keys($values));

foreach($values as $percentage => $label) {
// Calculate the position, maximum value gets position 0, smaller values approach 200
$pos = 200 - ($percentage / $max) * 200;
// Output the label that shows the percentage
echo '<span><label>'.$percentage.'%</label></span>';
// Output the span, apply style rule for the background position
echo '<span class="bar" style="background-position: -'.$pos.'px 0;">'.$label.'</span>';
}
?>
4

0 に答える 0