• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

PHP二维数组根据某个字段按指定排序方式排序

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
/**
 * 二维数组根据某个字段按指定排序方式排序
 * @param $arr array 二维数组
 * @param $field string 指定字段
 * @param int $sort_order string SORT_ASC 按照上升顺序排序, SORT_DESC 按照下降顺序排序(具体请参考array_multisort官方定义)
 * @param int $sort_flags string 排序类型标志(具体请参考array_multisort官方定义)
 * @return mixed
 *
 * demo
 * // 定义数组
 * $arr = [['name'=>'bbb'], ['name'=>'aaa'], ['name'=>'Ccc']];
 * // 需要按照name字段字符串升序排序
 * $arr = arraySort($arr, 'name', SORT_ASC, SORT_STRING);
 * // 需要按照name字段字符串升序排序,但忽略大小写
 * $arr = arraySort($arr, 'name', SORT_ASC, SORT_FLAG_CASE | SORT_STRING);
 */
function multiArraySort($arr, $field, $sort_order = SORT_ASC, $sort_flags = SORT_REGULAR)
{
    // 异常判断
    if (!$arr || !is_array($arr) || !$field) {
        return $arr;
    }

    // 将指定字段的值存进数组
    $tmp = [];
    foreach ($arr as $k => $v) {
        $tmp[$k] = $v[$field];
    }
    if (!$tmp) {
        return $arr;
    }

    // 调用php内置array_multisort函数
    array_multisort($tmp, $sort_order, $sort_flags, $arr);
    return $arr;
}

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
win下php的memcached的安装与使用发布时间:2022-07-10
下一篇:
PHP变量的间接引用(将某一字符串转化为变量)发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap