2011-03-31 53 views
0

目前我有一組數據[0] - [574]。(PHP)將數組分離爲多維

我想這樣做被分割下來成多維陣列中25份,即[0] - [22],如下:

Array 
(
    [0] => 
     [0] => abc 
     ... 
     [22] => xyz 
    [1] => 
     [0] => abc 
     ... 
     [22] => xyz 
    ... 
} 

我假定它可以通過使用一個for循環來完成把它全部分開 - 我已經嘗試了幾種方法,但還沒有完成。

感謝

-mango

回答

7

沒有爲that內置功能:

$parts = array_chunk($array, 23); 
+0

哈哈,甚至不在乎找:) +1 – jensgram 2011-03-31 10:28:23

1

我剛剛used虛擬數據,但你得到的想法:

// Set up input with dummy data 
$input = array(); 
for ($i = 0; $i < 574; $i++) { 
     $input[] = $i . 'aaa'; 
} 

$out = array(); 
for ($i = 0, $j = sizeof($input); $i < $j; $i++) { 
     $bucket = floor($i/($j/25)); 
     if (!isset($out[$bucket])) { 
       $out[$bucket] = array(); 
     } 
     $out[$bucket][] = $input[$i]; 
} 

print_r($out); 
1
$array = array(); 
$chunks = ceil(count($array)/25); 
$new = array_chunk($array, $chunks);