получить каждые х чисел между двумя значениями

Можно ли получить каждое число, делимое на 25000 между 2 значения в php. Например, мне дают Min цена 191000 и Максимум цена 432000. Я знаю, что могу сделать это, используя range() если у меня есть предопределенный массив значений, но я уверен, что есть лучший способ сделать это. В основном, поэтому возвращаемые значения:

191000
200000
225000
...
425000
432000

1

Решение

Вы можете использовать for цикл (или @mschuett использует foreach на range()), а затем оператор модуля (%) чтобы узнать, делится ли число на 25 000:

$numbers = array();
for($i = $min; $i <= $max; $i++) {
if($i % $divisible === 0) $numbers[] = $i;
}
print_r($numbers);

Или вы можете узнать первое число, делимое на 25 000, а затем использовать for цикл, который увеличивается на 25 000:

$base = ceil($min / $divisible) * $divisible;
for($i = $base; $i <= $max; $i += $divisible) {
$numbers[] = $i;
}
print_r($numbers);

Очевидно, в обоих примерах $min, $max, а также $divisible должны быть определены. Вывод обоих примеров:

Array
(
[0] => 200000
[1] => 225000
[2] => 250000
...
[9] => 425000
)
4

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

foreach(range(min, max) as $num){
if($num % 25000 == 0){
echo $num;
}
}
1

Вместо того, чтобы повторять 100 000 раз, вы можете объединить цикл for с некоторым округлением

$arr = [];
for($i = 191000; $i <= 432000; $i++) {
$i = ceil($i / 25000) * 25000;
if ($i > 432000) {
break;
}
$arr[] = $i;
}
1
По вопросам рекламы [email protected]