【发布时间】:2012-07-02 16:12:45
【问题描述】:
我有一个双层数组。 第一层大约有 10 个索引。 这些包含每个到 275 个元素的数组,每个数组包含一个单词。
Array
(
[0] => Array
(
[0] => Suspendisse
[1] => Nam.
[2] => Amet
[3] => amet
[4] => urna
[5] => condimentum
[6] => Vestibulum
[7] => sem
[8] => at
[9] => Curabitur
[10] => lorem
.... to [275]
)
[1] => Array
(
... you get the idea
)
... 10 elements total
)
现在,在某些情况下,例如占用空间的添加图像,我有时需要重新计算剩余的单词数并重新分配仍然剩余的数组。
为此,我编写了下面的函数来使剩余的数组成为一个很大的单词数组,然后我可以将 array_chunk 分配到正确的比例。 &$array 是对“母数组”的引用,$memory 是一个多余的单词数组,$index 是我们通过 for 循环迭代的地方,$limit 是第二级的“数组”长度,在这个案例275
function redistribute(&$array,$memory,$index,$limit)
{
$ret[] = $array[0];
// skip past the current processed items
for($c=1;$c<$index;$c++)
{
$ret[] = $array[$c];
}
// apply current item
$ret[] = $array[$index];
//join the rest into one big array off words;
$r2=$memory;
$length = count($array);
for($c=$index+1;$c<$length;++$c)
{
array_merge($r2,$array[$c]);
print_r($r2);
}
}
问题
array_merge(arr1,arr2) 似乎不起作用。
执行时
redistribute($splitupchunk,array('test','test2','test3','test4'),$i,275);
print_r($r2) 只打印没有来自 $array[$c] 的额外变量的测试数字。 我该如何解决这个问题?
【问题讨论】:
标签: php arrays multidimensional-array array-merge