在PHP切阵列(Cut array in php)

2019-10-24 13:24发布

我希望削减数组在PHP。 我的数组列表如下:

 Array
(
    [0] => 6/1/2014
    [1] => 6/2/2014
    [2] => 6/3/2014
    [3] => 6/4/2014
    [4] => 6/5/2014
    [5] => 6/6/2014
    [6] => 6/7/2014
    [7] => 6/8/2014
    [8] => 6/9/2014
    [9] => 6/10/2014
    [10] => 6/11/2014
    [11] => 6/12/2014
    [12] => 6/13/2014
    [13] => 6/14/2014
    [14] => 6/15/2014
    [15] => 6/16/2014
    [16] => 6/17/2014
    [17] => 6/18/2014
    [18] => 6/19/2014
    [19] => 6/20/2014
    [20] => 6/21/2014
    [21] => 6/22/2014
    [22] => 6/23/2014
    [23] => 6/24/2014
    [24] => 6/25/2014
    [25] => 6/26/2014
    [26] => 6/27/2014
    [27] => 6/28/2014
    [28] => 6/29/2014
    [29] => 6/30/2014
    [30] => 7/1/2014
    [31] => 7/2/2014
    [32] => 7/3/2014
    [33] => 7/4/2014
    [34] => 7/5/2014
    [35] => 7/6/2014
    [36] => 7/7/2014
    [37] => 7/8/2014
    [38] => 7/9/2014
    [39] => 7/10/2014
    [40] => 7/11/2014
    [41] => 7/12/2014
    [42] => 7/13/2014
    [43] => 7/14/2014
    [44] => 7/15/2014
    [45] => 7/16/2014
    [46] => 7/17/2014
    [47] => 7/18/2014
    [48] => 7/19/2014
    [49] => 7/20/2014
    [50] => 7/21/2014
    [51] => 7/22/2014
    [52] => 7/23/2014
    [53] => 7/24/2014
    [54] => 7/25/2014
    [55] => 7/26/2014
    [56] => 7/27/2014
    [57] => 7/28/2014
    [58] => 7/29/2014
    [59] => 7/30/2014
    [60] => 7/31/2014
    [61] => 8/1/2014
)

在这个阵列0至29元如果6个月,30日至60元素是7月等。

现在我想这个数组在下面的时尚

 Array
(
    [0] => 6/1/2014
    [1] => 6/2/2014
    [2] => 6/3/2014
    [3] => 6/4/2014
    [4] => 6/5/2014
    [5] => 6/6/2014
    [6] => 6/7/2014
    [7] => 6/8/2014
    [8] => 6/9/2014
    [9] => 6/10/2014
    [10] => 6/11/2014
    [11] => 6/12/2014
    [12] => 6/13/2014
    [13] => 6/14/2014
    [14] => 6/15/2014
    [15] => 6/16/2014
    [16] => 6/17/2014
    [17] => 6/18/2014
    [18] => 6/19/2014
    [19] => 6/20/2014
    [20] => 6/21/2014
    [21] => 6/22/2014
    [22] => 6/23/2014
    [23] => 6/24/2014
    [24] => 6/25/2014
    [25] => 6/26/2014
    [26] => 6/27/2014
    [27] => 6/28/2014
    [28] => 6/29/2014
    [29] => 6/30/2014
)


Array
(
    [0] => 7/1/2014
    [1] => 7/2/2014
    [2] => 7/3/2014
    [3] => 7/4/2014
    [4] => 7/5/2014
    [5] => 7/6/2014
    [6] => 7/7/2014
    [7] => 7/8/2014
    [8] => 7/9/2014
    [9] => 7/10/2014
    [10] => 7/11/2014
    [11] => 7/12/2014
    [12] => 7/13/2014
    [13] => 7/14/2014
    [14] => 7/15/2014
    [15] => 7/16/2014
    [16] => 7/17/2014
    [17] => 7/18/2014
    [18] => 7/19/2014
    [19] => 7/20/2014
    [20] => 7/21/2014
    [21] => 7/22/2014
    [22] => 7/23/2014
    [23] => 7/24/2014
    [24] => 7/25/2014
    [25] => 7/26/2014
    [26] => 7/27/2014
    [27] => 7/28/2014
    [28] => 7/29/2014
    [29] => 7/30/2014
    [30] => 7/31/2014
)

Array
(
    [0] => 8/1/2014
)

此计算应的方式,如果我选择其他月份则它也做切割阵列不同月份的相同的过程。

您也可以通过每月与单独的数组,并把它们放在主阵列

Answer 1:

$arrres =array();
foreach($arr as $value)
{
  $arrres[str_replace('/','',substr($value,0,2))][] = $value ;
}
print_r($arrres);


Answer 2:

您可以使用此:,也将产生个月的天同NUM阵列(28,30,31)

//generate dates for test
$dates = [];
for($i = 0 ; $i < 90 ; $i++){
    $dates[] = Date("d/m/Y",time()-($i*24*3600));
}

//make results, also validates that it's same month and year
$result = [];
foreach($dates as $date){
    $dStr = Date("m-y",strtotime(str_replace('/', '-', $date)));
    if(!isset($result[$dStr])) $result[$dStr] = [];

    $result[$dStr][] = $date;
}

var_dump($result);


Answer 3:

我想炸掉你的阵列中的每个指标的值,并将其设置为指标,新的阵列。

$days = [];
foreach($your_array as $day) {
 $days[ explode("/", $day)[0] ][] = $day;

}

var_dump( $days );


文章来源: Cut array in php
标签: php arrays