После некоторого кодирования я нашел решение.
Первый шаг: Получите минимальное и максимальное числа и установите для них предыдущий и следующий номер 10er:
$minSize = floor(35 / 10) * 10; /* Gives back 30 */
$maxSize = ceil( 93.5 / 10) * 10; /* Gives back 100*/
Теперь получитечисло из $maxSize
didvided на 10 .
$devidedNumber = $maxSize / 10; /* Gives back 10 */
После этого необходимо создать итерацию for
, используя $devidedNumber
, чтобы решить, сколько раз этоитерация должна выполняться.
$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 */
и получения непосредственно междузначения от округленных.
Спасибо за приятное предложение