3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php $listOfEmployees = array(); $Employee = new StdClass(); $Employee->department = 'foo'; $Employee->name = 'person1'; $listOfEmployees[] = $Employee; $Employee = new StdClass(); $Employee->department = 'foo'; $Employee->name = 'person2'; $listOfEmployees[] = $Employee; $Employee = new StdClass(); $Employee->department = 'bar'; $Employee->name = 'person3'; $listOfEmployees[] = $Employee; $listOfGroupedEmployess = array(); foreach($listOfEmployees as $Employee) { $listOfGroupedEmployess[$Employee->department][] = $Employee; } var_dump($listOfGroupedEmployess);
based on jFYok
Output for 5.0.0 - 5.6.26, hhvm-3.10.0 - 3.13.2, 7.0.0 - 7.1.0
array(2) { ["foo"]=> array(2) { [0]=> object(stdClass)#1 (2) { ["department"]=> string(3) "foo" ["name"]=> string(7) "person1" } [1]=> object(stdClass)#2 (2) { ["department"]=> string(3) "foo" ["name"]=> string(7) "person2" } } ["bar"]=> array(1) { [0]=> object(stdClass)#3 (2) { ["department"]=> string(3) "bar" ["name"]=> string(7) "person3" } } }
Output for 4.3.0 - 4.4.9
array(2) { ["foo"]=> array(2) { [0]=> object(stdClass)(2) { ["department"]=> string(3) "foo" ["name"]=> string(7) "person1" } [1]=> object(stdClass)(2) { ["department"]=> string(3) "foo" ["name"]=> string(7) "person2" } } ["bar"]=> array(1) { [0]=> object(stdClass)(2) { ["department"]=> string(3) "bar" ["name"]=> string(7) "person3" } } }