编程

当前位置:澳门新莆京娱乐官网 > 编程 > 多维数组排序

多维数组排序

来源:http://www.drgigabytes.com 作者:澳门新莆京娱乐官网 时间:2020-01-01 04:30

数字索引数组:
bool usort( array &$array, callback $cmp_function )
usort函数对点名数组(参数1State of Qatar按钦点方式(参数2卡塔尔(قطر‎进行排序。
当大家想对多维数组开展排序时,多维数组的各样成分又是生机勃勃数组类型,而三个数组如何比相当的大小?那是急需客商自定义的(是按种种数组的首先要素比较如故…卡塔尔国。

复制代码 代码如下:
//定义多维数组
$a = array(
array("sky", "blue"),
array("apple", "red"),
array("tree", "green"));
//自定义数组比较函数,按数组的第叁个因素举办相比较。
function my_compare($a, $b) {
if ($a[1] < $b[1])
return -1;
else if ($a[1] == $b[1])
return 0;
else
return 1;
}
//排序
usort($a, 'my_compare');
//输出结果
foreach($a as $elem) {
echo "$elem[0] : $elem[1]
";
}

?>

结果为:
复制代码 代码如下:
sky : blue
tree : green
apple : red

波及数组:
bool uasort(array &$array, callback $cmp_function)
bool uksort(array &$array, callback $cmp_function)

uasort, uksort用法与usort相近,当中uasort(卡塔尔(قطر‎对关周到组的值(value卡塔尔国举办排序,uksort(卡塔尔国对涉嫌数组的重大字(keyState of Qatar进行排序。
复制代码 代码如下:
$a = array(
'Sunday' => array(0,'7th'),
'Friday' => array(5,'5th'),
'Tuesday'=> array(2,'2nd'));

function my_compare($a, $b) {
if ($a[1] < $b[1])
return -1;
else if ($a[1] == $b[1])
return 0;
else
return 1;
}
//按$a数组的值的第一个要素(7th,5th,2nd卡塔尔国举办排序
uasort($a, 'my_compare');
foreach($a as $key => $value) {
echo "$key : $value[0] $value[1]
";
}
//按$a数组的入眼字的第一个字符(r,u,u卡塔尔实行排序
uksort($a, 'my_compare');
foreach($a as $key => $value) {
echo "$key : $value[0] $value[1]
";
}

?>

结果为:

Tuesday : 2 2nd
Friday : 5 5th
Sunday : 0 7th
Friday : 5 5th
Sunday : 0 7th
Tuesday : 2 2nd

本文由澳门新莆京娱乐官网发布于编程,转载请注明出处:多维数组排序

关键词:

上一篇:PHP如何实现合并2个数字键数组值

下一篇:没有了