Как массив заполнить чередующимися цифрами в php
Ответы
Nikolai Gagarinov
09 декабря 2021
Создать массив с чередующимися цифрами можно следующим образом
<?php
$numbers = [1, 2, 3];
$repeatedNumbers = array_merge(...array_fill(0, 3, $numbers));
print_r($repeatedNumbers);
// Array
// (
// [0] => 1
// [1] => 2
// [2] => 3
// [3] => 1
// [4] => 2
// [5] => 3
// [6] => 1
// [7] => 2
// [8] => 3
// )
Что происходит в этом коде?
- У нас есть переменная с нашими цифрами или числами.
- с помощью функции
array_fill
создаем новый массив. Передаем в него первый индекс, количество элементов и значение для повтора. Таким образом функция создаст двумерный массив, в котором массивы с числами из переменной - Вызываем функцию
array_merge
. Эта функция принимает один и больше массивов и соединяет их один с другим. Но! У нас массив вложенный, поэтому здесь используем spread оператор. Т.е. все вложенные массивы передаются в функцию, словно это будут отдельные аргументы.Array_merge
их получает и соединяет между собой. - Получаем плоский массив с числами, Которые повторяются
0
0