1

我有以下数字数组($data),我想把它分成两个数组(range1 和 2)。

正如你所见,我只是不会前进。有人可以给我一个提示如何解决这个问题吗?

$data = array( 16,17,18,19,20,23,24,25,26 );

$range1 = array();
$range2 = array();

$firstday = reset( $data );
$lastday = end( $data );

for($x = $firstday;$x <= $lastday; $x++ ){
    if( $firstday == $x ){
        $range1 =.$x;    
    }
    elseif( $x - $firstday == 1){
        $range2 =.$x;
    }
}

Output must be array(16,17,18,19,20); array(23,24,25,26);
4

2 回答 2

3
    $data = array( 16,17,18,19,20,23,24,25,26);
    $output1 = array_slice($data, 0, 5); 
    $output2 = array_slice($data, 5, 4); 
于 2013-09-28T06:06:23.673 回答
0

@Jenson M John 使用的相同方式,

得到数组的一半

$count = count($data);
$output1 = array_slice($data, 0, ceil($count/2)); 
$output2 = array_slice($data, ceil($count/2), $count-(ceil($count/2))); 
于 2013-09-28T06:20:40.177 回答