如何将数组拆分为具有平衡值集的多个数组

时间:2018-09-12 16:18:05

标签: php arrays

例如,如果我的数组具有值(10,10,3,4,7),并且我需要分成2个相等或接近相等的部分。例如,结果将是2个数组,例如:

数组#1 =数组(10,7)

数组#2 =数组(10,3,4)

或者如果我需要分成3个相等或近似相等的部分。例如,结果将是3个数组,例如:

数组#1 =数组(10)

数组#2 =数组(10)

数组#3 =数组(7,3,4)

我试图找出是否存在相对简单的方法来使用本机阵列功能。或者最好只是对数组进行分块,然后遍历卡盘并手动分配值。

1 个答案:

答案 0 :(得分:0)

您可以使用array_chunk函数来实现此目的。但是,它使用固定的卡盘尺寸,而不是一定数量的产生的卡盘。

但是,您可以使用以下类似的方法简单地找到所需的大小:

$output = array_chunk($input, count($input) / $parts);