我有一个动态长度 L1 的数组。我需要将此数组拆分为 L2 个数组,每个数组都有LEN[i]来自原始数组的数字。
EX:
Original:
$array=[1,2,3,4,5,6,7,8,9,10]
Here L1=10
L2=3
$LEN=[3,3,4]
So the 3 arrays will be
$a1=[1,2,3]
$a2=[4,5,6]
$a3=[7,8,9,10]
Run Code Online (Sandbox Code Playgroud)
我尝试了很多方法,但似乎没有任何效果。任何帮助将不胜感激。
如果您需要这样一个可变的块数组长度,那么您可以使用 simpleforeach和array_splicelike创建自己的功能
$array=[1,2,3,4,5,6,7,8,9,10];
$arr = [3,3,4];
$result_arr = [];
foreach($arr as $k => $v){
$result_arr[$k] = array_splice($array,0,$v);
}
print_R($result_arr);
Run Code Online (Sandbox Code Playgroud)
输出:
Array
(
[0] => Array
(
[0] => 1
[1] => 2
[2] => 3
)
[1] => Array
(
[0] => 4
[1] => 5
[2] => 6
)
[2] => Array
(
[0] => 7
[1] => 8
[2] => 9
[3] => 10
)
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3785 次 |
| 最近记录: |