Для получения полного доступа
зарегистрируйтесь

Разбитие массива на части, последний элемент делает больше $minsize  


<?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]]

Чтобы увидеть комментарии, нужно быть участником сообщества

Регистрация