<?php
$original_values = array( 'Bridge Work' => array( array('Name' => 'NJ Trunpike_Bridge Repair Work', 'Location' => 'New Jersey', 'State' => 'New Jersey'), array('Name' => 'Honoapiilani Highway Bridge Truss', 'Location' => 'Maui', 'State' => 'Hawaii'), array('Name' => 'BlueCross Blueshield of Tennessee (Bridge)', 'Location' => 'Memphis', 'State' => 'Tennessee'), array('Name' => 'Henderson Center Connector Bridge', 'Location' => 'Coquitlam', 'State' => 'British Columbia'), ), 'Educational' => array( array('Name' => 'RTI TASS Complex Admin Bldg', 'Location' => 'Bluffdale', 'State' => 'Utah'), array('Name' => 'Auburn High School', 'Location' => 'Auburn', 'State' => 'Washington'), array('Name' => 'Reed College', 'Location' => 'Portland', 'State' => 'Oregon'), array('Name' => 'Shorewood High School', 'Location' => 'Shoreline', 'State' => 'Washington'), ),);
function my_sort($my_array, $my_key)
{
$sorted_values = array();
foreach($my_array as $key => $value)
{
$columns = null;
foreach ($value as $index => $element)
{
$columns[] = $element[$my_key];
}
$temp = $value;
array_multisort($columns, SORT_ASC, $temp);
$sorted_values[$key] = $temp;
}
return $sorted_values;
}
$result = my_sort($original_values, 'Name');
echo '<pre>'; print_r($result); echo '</pre>';
preferences:
43.55 ms | 402 KiB | 5 Q