PHP:用最小值和最大值分隔一个数字到10er数组

PHP: Seperate a number to 10er array with a minimum and maximum value

我不知道如何以正确的方式形成这个,所以这是概念。

例如,我有 93.535 作为数字。

我想做的是从最小值中获取前一个 10er 数字,在本例中为 30,并从最大值中获取下一个 10er 数字,在本例中为 100。

下一步是从这两个数字之间的每个 10er 数字中获取一个数组。它看起来像这样:

array(8 items)
   0 => 30 
   1 => 40 
   2 => 50 
   3 => 60 
   4 => 70 
   5 => 80 
   6 => 90 
   7 => 100 

所以问题是,我如何使用 PHP

实现它

经过一些编码我找到了解决方案。

第一步:获取最小和最大数字并将它们设置为上一个和下一个10er数字:

$minSize = floor(35 / 10) * 10; /* Gives back 30 */
$maxSize = ceil( 93.5 / 10) * 10; /* Gives back 100*/

现在从 $maxSize 中得到数字除以 10

$devidedNumber = $maxSize / 10; /* Gives back 10 */

之后,将使用 $devidedNumber 创建一个 for 迭代,以决定该迭代应该 运行.

的次数
$sizedArray = array();

for ($i = $minSize/10; $i <= $devidedNumber; $i++)
{
   $sizedArray[] = $i * 10;
}

$i是从3开始的,因为我们需要从30开始到目标值的值。

结果:

array(8 items)
   0 => 30 
   1 => 40 
   2 => 50 
   3 => 60 
   4 => 70 
   5 => 80 
   6 => 90 
   7 => 100 

编辑:

@Nigel Ren 回答后,另一种方法如下。四舍五入后,for 迭代可能如下所示:

 for ($i = $minSize; $i <= $maxSize; $i+=10)
 {
    $sizedArray[] = $l;
 }

在这种情况下,通过删除行

简化了代码
 $devidedNumber = $maxSize / 10; /* Gives back 10 */

并直接从四舍五入中获取中间值。

谢谢你的好建议