usort、uasort、uksort浅入

本文深入探讨了PHP中的三个自定义排序函数:usort、uasort和uksort。usort用于根据用户定义的比较函数对数组元素进行排序,同时保持原有的键值对应关系;uasort不仅排序元素,还会调整键的顺序;而uksort则是专门针对键进行排序的函数。
摘要由CSDN通过智能技术生成

这三个都是php提供给开发者自定义排序用的

// usort 函数,将两个值传入指定函数中,如果返回的是true,则交换两者的值
// uasort 函数的效果是类似,但是uasort中,键也会被进行交换
// uksort 函数是对键值进行排序

usort

// 来个简单的例子
$arrInt = [3,1,6,4,7,2];
print_r($arrInt);
//返回Array([0]=>3,[1]=>1,[2]=>6,[3]=>4,[4]=>7,[5]=>2)

usort($arrInt, function($a, $b) {
    var_dump($a,$b); //int(3) int(1)
    if ($a == $b) return 0;
    // 这是从小到大排序 想要相反的可以切换'>'符号
    return $a > $b ? 1 : -1;
});
print_r($arrInt);
// 返回 Array([0]=>1,[1]=>2,[2]=>3,[3]=>4,[4]=>6,[5]=>7)


// 多维关联数组进行排序
$arr = [
    ['id'=>2,'name'=>'熊二'],
    ['id'=>4,'name'=>'李四'],
    ['id'=>6,'name'=>'赵六'],
    ['id'=>5,'name'=>'王五'],
];

usort($arr, function($a, $b){
    var
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值