我从MySQL DB中提取了10个整数:
我希望能够确定最大值,然后向上舍入到最接近的百分之一。有了这个,我希望能够创建一个10个数字的列表,这些数字均匀分解为零。
在示例中: {232,10,0,55,130,423,102,22,98,3}
Take:423 =>最高可达500
然后使用数字500返回时使用相同的分隔数字,例如:
500,450,400,350,300,250,200,150,100,50,0
提前感谢您的帮助!
克里斯
答案 0 :(得分:3)
$maximal = max($array);
function roundNearestHundredUp($number)
{
return ceil( $number / 100 ) * 100;
}
$counting = roundNearestHundredUp($maximal);
while($counting >= 0){
echo $counting;
$counting -= 10;
}
答案 1 :(得分:3)
这应该这样做:
<?php
$array = array(232, 10, 0, 55, 130, 423, 102, 22, 98, 3);
$max = max($array);
$max_rounded = ceil($max/100)*100;
$diff = ($max_rounded/10);
while($max_rounded >= 0){
echo $max_rounded.' ';
$max_rounded -= $diff;
}
?>
答案 2 :(得分:0)
您可以使用MySQL的MAX()
函数获取结果集的最大数量。返回你不需要的结果没有任何意义:
SELECT MAX(your_column) FROM some_table;
然后使用PHP对数字进行数学运算:
function getChoices($start, $count)
{
$start = ceil($start / 100) * 100;
return range($start, 0, ($start / $count));
}
$choices = getChoices(460, 10);
如果您不想使用MySQL的MAX()
:$choices = getChoices(max($results), 10);