Я пишу сценарий, который должен идентифицировать каждое седьмое число, где первое число последовательности равно 0 (таким образом, последовательность 6, 13, 20, 27, 34, 41, 48 и т. Д.)
Вот что я получил (работает ограниченным образом), но я бы предпочел написать цикл, чтобы значения в последовательности не нужно было жестко кодировать:
<?php
$x = 7;
if ($x === 6 || $x === 13 || $x === 20 || $x === 27 || $x === 34 || $x === 41 || $x === 48) {
$result = 1;
} else {
$result = 0;
}
echo $result;
?>
Заранее спасибо за любые советы!
Обновление: вот мой обновленный скрипт, использующий решение @robbieaverill и проверяющий значения по массиву. Здесь есть много отличных решений, спасибо всем!
<?php
$divisor = 7;
$limit = 500;
$sequence = array();
for ($i = 0; $i <= $limit; $i++) {
if (is_int(($i + 1) / $divisor)) {
$sequence[] = $i;
}
}
$x = 41;
if (in_array($x, $sequence, true)) {
$result = 1;
} else {
$result = 0;
}
echo $result;
?>
Вывод здесь равен 1, что означает, что если значение $ x равно 41, оно находится в массиве $ sequence.