3v4l.org

run code in 300+ PHP versions simultaneously
<?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_4' => array( 'name' => 'Category 4', 'column' => '2' ), ); $output = array(); foreach($categories as $catName => $category) { $columnNum = $category['column']; $key = 'column_' . $columnNum; if (!isset($output[$key] )) { $output[$key] = array($catName); } else { $output[$key][] = $catName; } } var_dump($output);

preferences:
38.91 ms | 402 KiB | 5 Q