Return 键中包含所有数据的数组

Return array with all data in key

我有这个数组$allYearData
现在我想把它分成 12 个部分,按月分开。
所以我使用 PHP preg_grep()foreach 循环来搜索数据。

foreach($allYearData as $key){
    $janData[] = preg_grep("/^2015-01-.*$/", $key);
}

如何获取每个键中的所有数据?
正如您在 $janData 中看到的那样,我在没有命中的地方得到了空键。然后只有命中的日期。

我希望 $janData 成为一个包含键 0 的新数组,以包含第一个命中和该键中的所有 data/values。与 $allYearData 类似,但仅包含来自 preg_grep.

的点击

$allYEarData:

Array ( 
  [0] => Array ( 
    [id] => 7811
    [objekt_element] => 23050-121-1_3105
    [objekt_nr] => 23050-121-1
    [element_nr] => 3105
    [vart] => B.Avf
    [vem] => Blå
    [anteckn] => 
    [datum] => 2015-09-29 18:00:19
  ) 
  [1] => Array ( 
    [id] => 7812
    [objekt_element] => 23050-121-1_3107
    [objekt_nr] => 23050-121-1
    [element_nr] => 3107
    [vart] => B.Avf
    [vem] => Blå
    [anteckn] =>
    [datum] => 2015-09-29 18:00:22
  )
  [2]...

$janData

Array ( 
  [0] => Array ( )
  [1] => Array ( )
  [2] => Array ( )
  [3] => Array ( )
  [4] => Array ( )
  [5] => Array (
    [datum] => 2015-01-16 04:17:01
  )
  [6] => Array ( 
    [datum] => 2015-01-16 04:16:57 
  )
  [7]

我想要填充 $janData

Array ( 
  [0] => Array ( 
    [id] => 7811
    [objekt_element] => 23050-121-1_3105
    [objekt_nr] => 23050-121-1
    [element_nr] => 3105
    [vart] => B.Avf
    [vem] => Blå
    [anteckn] => 
    [datum] => 2015-01-16 18:00:19
  ) 

你 foreach 中的 $key 是数组,所以 select 你想要点击的日期在哪里,然后使用 $key 添加到结果数组。

foreach($allYearData as $key){
    if (preg_grep("/^2015-01-.*$/", $key['datum']){     
        $janData[] = $key;
    }
}