<?php
/**
* Разбивает массив на чанки размером [n,2n-1]
*/
function array_chunk_min($list, $minSize){
$listCount = count($list);
$chunks = array_chunk($list, $minSize);
$chunksCount = count($chunks);
if ($listCount > $minSize && count($chunks[$chunksCount - 1]) % $minSize > 0) {
$chunks[$chunksCount - 2] = array_merge($chunks[$chunksCount - 2], $chunks[$chunksCount - 1]);
array_pop($chunks);
}
return $chunks;
}
print_r(array_chunk_min(range(1,45),20)); // [[1...20],[21...45]]
print_r(array_chunk_min(range(1,19),20)); // [[1...19]]
Чтобы увидеть комментарии, нужно быть участником сообщества
Регистрация