function array_sort_key(array &$array, $key) {
global $_key; // Declare local compare function.
if(!function_exists(_array_sort_key_cmp)) {
function _array_sort_key_cmp($a, $b) {
global $_key;
return strcmp($a[$_key], $b[$_key]);
}
} // Sort array. Set key used my compare function. Finally unset useless global variable.
$_key = $key;
$result = usort($array, "_array_sort_key_cmp");
unset($_key); return $result;
}
function get_conf_physical_disks_list() {
global $config; $a_physicaldisk = array(); if (is_array($config['disks']['disk'])) {
array_sort_key($config['disks']['disk'], "name");
$a_disks = $config['disks']['disk'];
foreach ($a_disks as &$disk) { $disk['class'] = "physical"; } // Set disk type
//$a_physicaldisk = array_merge($a_physicaldisk, $a_disks);
} return array_merge($a_physicaldisk, $a_disks);
}如题 关于array_sort_key()这个函数我不太明白
array_sort_key($config['disks']['disk'], "name"); 返回的是什么值?
有高手能细细解答吗?谢谢了!
global $_key; // Declare local compare function.
if(!function_exists(_array_sort_key_cmp)) {
function _array_sort_key_cmp($a, $b) {
global $_key;
return strcmp($a[$_key], $b[$_key]);
}
} // Sort array. Set key used my compare function. Finally unset useless global variable.
$_key = $key;
$result = usort($array, "_array_sort_key_cmp");
unset($_key); return $result;
}
function get_conf_physical_disks_list() {
global $config; $a_physicaldisk = array(); if (is_array($config['disks']['disk'])) {
array_sort_key($config['disks']['disk'], "name");
$a_disks = $config['disks']['disk'];
foreach ($a_disks as &$disk) { $disk['class'] = "physical"; } // Set disk type
//$a_physicaldisk = array_merge($a_physicaldisk, $a_disks);
} return array_merge($a_physicaldisk, $a_disks);
}如题 关于array_sort_key()这个函数我不太明白
array_sort_key($config['disks']['disk'], "name"); 返回的是什么值?
有高手能细细解答吗?谢谢了!
$config['disks']['disk'][0]['name'] = "a";
$config['disks']['disk'][1]['name'] = "c";
$config['disks']['disk'][2]['name'] = "b";
get_conf_physical_disks_list();
获得的结果如下:---------- php 执行 ----------
array (
0 =>
array (
'name' => 'a',
'class' => 'physical',
),
1 =>
array (
'name' => 'b',
'class' => 'physical',
),
2 =>
array (
'name' => 'c',
'class' => 'physical',
),
)
输出完成 (耗时: 0 秒) - 正常终止
array_sort_key:根据指定的数组key,进行排序
在调用的时候不要传&,否则php会出警告信息