У меня есть массив, на котором я петлю. У меня есть другой массив, из которого мне нужно выбрать один за другим, но ему нужно идти по кругу, если он попадает в конец массива. Для того, чтобы понять, здесь какой-то код:Рассматривайте массив как круглый массив при выборе элементов - PHP
$mainArray = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
$size = count($mainArray);
$circular = array('A', 'B', 'C');
for($i = 0; $i < $size; $i++) {
echo $mainArray[$i] . ' = ' . $circular[$i] . ', ';
}
Теперь выше код печатает это:
1 = A, 2 = B, 3 = C, UNDEFINED INDEX ERROR
Что мне нужно, чтобы напечатать это:
1 = A, 2 = B, 3 = C, 4 = A, 5 = B, 6 = C, 7 = A, 8 = B, 9 = C, 10 = A
Есть встроенный функция PHP, которая превращает массив в круглый массив? Я думаю, мне нужно использовать модульный оператор для этого.
Это не будет работать, если значение элемента массива falsey. 'circ' будет возвращаться к началу массива всякий раз, когда он достигает этого элемента. – Barmar
Спасибо. Отредактировано для проверки '=== false'. Таким образом, элемент массива может быть «ложным», но хорошо. – AbraCadaver
Такое решение работает до тех пор, пока 'false' не является допустимым элементом массива. Решение с использованием модуля работает в более общем плане. – Barmar