Php 检查具有相同键的对象的数组

Php 检查具有相同键的对象的数组,php,arrays,object,Php,Arrays,Object,我正在创建一个对象数组(或尝试创建),如下所示: Array ( [1] => stdClass Object ( [date] => 2016-09-28 ) [5] => stdClass Object ( [date] => 2016-09-28 ) [2] => stdClass Object ( [date] => 2016-09-29 ) [0]

我正在创建一个对象数组(或尝试创建),如下所示:

Array
(
[1] => stdClass Object
    (
        [date] => 2016-09-28
    )

[5] => stdClass Object
    (
        [date] => 2016-09-28
    )

[2] => stdClass Object
    (
        [date] => 2016-09-29
    )

[0] => stdClass Object
    (
        [date] => 2016-09-30
    )

[4] => stdClass Object
    (
        [date] => 2016-09-30
    )

[3] => stdClass Object
    (
        [date] => 2016-09-30
    )

)
我遇到的问题是,我无法确定如何检查具有
date->$date
的对象是否已经存在

我需要一个
'days'
数组,然后我可以继续将研讨会添加到相应的days,而不是每次添加到一个新对象

有人能提个建议吗

      • 编辑
为了更好地理解这一点,我反复浏览了一堆wordpress帖子(在本例中为“workshop”类型),它们都有一个日期元。在我穿过环路的路上,我想

  • 获取日期(天)
  • 检查数组中是否存在该日期
  • 如果不是,则将日期添加到数组中
  • 然后将车间对象添加到该日期数组中
因此,我应该得到一个数组,其中包含三到四个唯一的日期,每个日期都有一个车间对象数组

Array( 
  Date 1( 
    Workshop( 
      Title, etc 
    ),
    Workshop()
   )
  Date 2( 
    Workshop(
      Title, etc
    )
    Workshop()
  )
)

很抱歉,我确信我的结构是错的-这对我来说有点先进。谢谢你的关注

你需要的是这样的东西。您可以使用一个函数对结果进行分组

function groupWorkShopsByDate($first_array){
    $result_arr = array();
    foreach( $first_array as $workShop ){
        $result_arr[ $workShop->date ][] = $workShop;
    }
    return $result_arr;
}

希望这有帮助

你需要什么还不清楚。请进一步解释。我已经为context@masterFly编辑了这个问题。也许将输入作为数组更容易处理,请尝试解码它
json\u decode($jsonstring,true)将得到一个关联数组。因此,基本上,您要做的是从日期开始对对象(位于第一个数组中)进行分组。我说的对吗?对!这很有魅力。谢谢您的时间@masterFly。您能帮我进一步整理阵列吗?我已使用“ksort()”将日期按顺序排序,但我需要进一步对每个日期内的研讨会进行排序,我被卡住了。基本上,您必须决定要对研讨会排序的信息。然后将put作为数组的键<代码>$result\u arr[$workShop->date][]=$workShop然后您可以像以前一样对它们进行排序!