3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php $categories = array( 'category_1' => array( 'name' => 'Category 1', 'column' => '1' ), 'category_2' => array( 'name' => 'Category 2', 'column' => '2' ), 'category_3' => array( 'name' => 'Category 2', 'column' => '1' ), 'category_4' => array( 'name' => 'Category 4', 'column' => '3' ), 'category_5' => array( 'name' => 'Category 4', 'column' => '2' ), ); $formatted = array(); foreach ($categories as $item) { $column = $item['column']; if (isset($formatted[$column])) { $formatted[$column][] = $item; } else { $formatted[$column] = array($item); } } var_export($formatted);
Output for 4.3.0 - 7.1.0
array ( 1 => array ( 0 => array ( 'name' => 'Category 1', 'column' => '1', ), 1 => array ( 'name' => 'Category 2', 'column' => '1', ), ), 2 => array ( 0 => array ( 'name' => 'Category 2', 'column' => '2', ), 1 => array ( 'name' => 'Category 4', 'column' => '2', ), ), 3 => array ( 0 => array ( 'name' => 'Category 4', 'column' => '3', ), ), )