如何在PHP中获得这样的数组?

如何在PHP中获得这样的数组?,php,arrays,Php,Arrays,我有一个这样的事件数组: Array ( [0] = Array( [EventId] => 596 [Event] => test [ResourceId] => 6 [StartDate] => 2013-06-21 10:00:00 [FinishDate] 2013-0

我有一个这样的事件数组:

 Array (

     [0] = Array(
                  [EventId] => 596
                  [Event] => test
                  [ResourceId] => 6
                  [StartDate] =>  2013-06-21 10:00:00
                  [FinishDate]  2013-06-21 10:30:00                   
                )
     [1] = Array(
                  [EventId] => 598
                  [Event] => another test
                  [ResourceId] => 6
                  [StartDate] =>  2013-06-21 15:00:00
                  [FinishDate]  2013-06-21 16:30:00                   
                )
     [2] = Array(
                  [EventId] => 599
                  [Event] => test
                  [ResourceId] => 8
                  [StartDate] =>  2013-06-21 10:00:00
                  [FinishDate]  2013-06-21 10:30:00                   
                )
      [3] = Array(
                  [EventId] => 601
                  [Event] => another test
                  [ResourceId] => 10
                  [StartDate] =>  2013-06-21 15:00:00
                  [FinishDate]  2013-06-21 16:30:00                   
                )
      [4] = Array(
                  [EventId] => 602
                  [Event] => new event
                  [ResourceId] => 10
                  [StartDate] =>  2013-06-22 10:00:00
                  [FinishDate]  2013-06-22 12:30:00                   
                )
      [5] = Array(
                  [EventId] => 604
                  [Event] => try new event
                  [ResourceId] => 6
                  [StartDate] =>  2013-06-22 10:00:00
                  [FinishDate]  2013-06-22 12:30:00                   
                )
       )
   Array (

     [0] = Array(
                  [EventId] => 596,599
                  [Event] => test
                  [ResourceId] => 6,8
                  [StartDate] =>  2013-06-21 10:00:00
                  [FinishDate]  2013-06-21 10:30:00                   
                )
     [1] = Array(
                  [EventId] => 598,601
                  [Event] => another test
                  [ResourceId] => 6,10
                  [StartDate] =>  2013-06-21 15:00:00
                  [FinishDate]  2013-06-21 16:30:00                   
                )         
     [2] = Array(
                  [EventId] => 602
                  [Event] => new event
                  [ResourceId] => 10
                  [StartDate] =>  2013-06-22 10:00:00
                  [FinishDate]  2013-06-22 12:30:00                   
                )
     [3] = Array(
                  [EventId] => 604
                  [Event] => try new event
                  [ResourceId] => 6
                  [StartDate] =>  2013-06-22 10:00:00
                  [FinishDate]  2013-06-22 12:30:00                   
                )
       )
我希望事件数组中的结果数组如下:

 Array (

     [0] = Array(
                  [EventId] => 596
                  [Event] => test
                  [ResourceId] => 6
                  [StartDate] =>  2013-06-21 10:00:00
                  [FinishDate]  2013-06-21 10:30:00                   
                )
     [1] = Array(
                  [EventId] => 598
                  [Event] => another test
                  [ResourceId] => 6
                  [StartDate] =>  2013-06-21 15:00:00
                  [FinishDate]  2013-06-21 16:30:00                   
                )
     [2] = Array(
                  [EventId] => 599
                  [Event] => test
                  [ResourceId] => 8
                  [StartDate] =>  2013-06-21 10:00:00
                  [FinishDate]  2013-06-21 10:30:00                   
                )
      [3] = Array(
                  [EventId] => 601
                  [Event] => another test
                  [ResourceId] => 10
                  [StartDate] =>  2013-06-21 15:00:00
                  [FinishDate]  2013-06-21 16:30:00                   
                )
      [4] = Array(
                  [EventId] => 602
                  [Event] => new event
                  [ResourceId] => 10
                  [StartDate] =>  2013-06-22 10:00:00
                  [FinishDate]  2013-06-22 12:30:00                   
                )
      [5] = Array(
                  [EventId] => 604
                  [Event] => try new event
                  [ResourceId] => 6
                  [StartDate] =>  2013-06-22 10:00:00
                  [FinishDate]  2013-06-22 12:30:00                   
                )
       )
   Array (

     [0] = Array(
                  [EventId] => 596,599
                  [Event] => test
                  [ResourceId] => 6,8
                  [StartDate] =>  2013-06-21 10:00:00
                  [FinishDate]  2013-06-21 10:30:00                   
                )
     [1] = Array(
                  [EventId] => 598,601
                  [Event] => another test
                  [ResourceId] => 6,10
                  [StartDate] =>  2013-06-21 15:00:00
                  [FinishDate]  2013-06-21 16:30:00                   
                )         
     [2] = Array(
                  [EventId] => 602
                  [Event] => new event
                  [ResourceId] => 10
                  [StartDate] =>  2013-06-22 10:00:00
                  [FinishDate]  2013-06-22 12:30:00                   
                )
     [3] = Array(
                  [EventId] => 604
                  [Event] => try new event
                  [ResourceId] => 6
                  [StartDate] =>  2013-06-22 10:00:00
                  [FinishDate]  2013-06-22 12:30:00                   
                )
       )
我正在研究PHP。但我不知道如何迭代数组以匹配其2个值并添加到新数组中


我需要匹配开始日期和结束日期。如果两者都相同,我需要连接资源id并合并该记录

我尝试了for循环,但没有成功

我试过这个:

  for($i=0;$i<count($event);$i++)
  {
if(($event[$i]["StartDate"]==$event[$i+1]["StartDate"]) && ($event[$i]["FinishDate"]==$event[$i+1]["FinishDate"]))
     {
     echo "yes"."<br>"; // Add in new array
     }
     else
     {
    echo "no"."<br>";
     }      
  }

for($i=0;$i多维数组!您将需要嵌套for循环:

for($i=0;$i<4;$i++)
{
for($j=0;$j<4;$j++)
{
$var = $your_array[i][j];
echo $var;//do whatever you want to do with the variable here
}
}

for($i=0;$i

$out = array();
$c = count($event);
for ($i = 0; $i < $c; $i++) {
    $out[$i] = $event[$i];
    for ($j = $i+1; $j < $c; $j++) {
        if ($event[$i]["StartDate"] == $event[$j]["StartDate"] && 
            $event[$i]["FinishDate"] == $event[$j]["FinishDate"]) {
            $out[$i]["EventId"] .= ", " . $event[$j]["EventId"];
            // do the same with other indices
        }
    }
}
$out=array();
$c=计数($event);
对于($i=0;$i<$c;$i++){
$out[$i]=$event[$i];
对于($j=$i+1;$j<$c;$j++){
如果($event[$i][“StartDate”]==$event[$j][“StartDate”]]和
$event[$i][“FinishDate”]==$event[$j][“FinishDate”]){
$out[$i][“EventId”]。=“,”$event[$j][“EventId”];
//对其他索引也做同样的操作
}
}
}

我没有得到您想要达到的目标。按事件
名称
|
按开始日期
|
按完成日期
对事件进行分组?我想匹配StartDate和EndDate。如果两者都相同,则需要合并记录,这意味着要合并匹配的资源id。bcoz两个资源同时工作。@ShivanRaptor:我已经添加了我的代码。我需要匹配StartDate和EndDate。如果两者相同,我需要合并资源id并合并这些记录。