我有一个以下格式的关联数组:
如何按"c_name"升序对数组进行排序
Array
(
[country_detials] => Array
(
[0] => Array
(
[c_id] => AD
[c_name] => Andorra
)
[1] => Array
(
[c_id] => AE
[c_name] => United Arab Emirates
)
)
)
使用自定义比较功能。这非常快速和容易做到。试试这个:
function sortingFun($item1,$item2)
{
if ($item1['c_id'] == $item2['c_id']) return 0;
return ($item1['c_id'] < $item2['c_id']) ? 1 : -1;
}
usort($yourarray,'sortingFun');
print_r($yourarray);
你可以使用uasort并创建一个比较函数,你可以根据需要,我为你做的,你应该随心所欲地调整比较功能。
$array = array(
array(
'c_id' =>'AD',
'c_name' =>'Andorra',
),
array(
'c_id' =>'AE',
'c_name' =>'United Arab Emirates',
),
)
// Comparison function
function cmp($a, $b) {
if ( strcmp ( $a['c_name'],$b['c_name'] ) ) {
return 1;
}
}
// Sort and print the resulting array
uasort($array, 'cmp');