PHP 二维数组, 按某一个字段排序

file
想到的两种简便方式,
方案1、 使用array_colum 函数将排序的字段替换成二维数组的键,再 ksort/krsort 排序,最后结果键要自己处理(前提 要拿来排序的字段必须是唯一,否则数组会被合并)。
file
结果
file
方案2、 使用array_colum 函数拿出要排序的字段作为一维数组,再 array_multisort 排序,最后结果键会直接重置。
file
结果
file

php
本作品采用《CC 协议》,转载必须注明作者和本文链接
laisxn
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
讨论数量: 6
Jourdon

一直用第二种方法

6年前 评论

$array->sortBy('sort'); 我喜欢这么写

6年前 评论
laisxn

@Max 这个是什么操作,laravel的集合吗,我只是写原生的

6年前 评论

$arr = collect($data)->sortBy('sort')->values()->all();
$attr = collect($data)->sortByDesc('sort')->values()->all();

6年前 评论
laisxn

@james_xue 用集合是比较优雅,不过我还是喜欢php内置函数,博大精深

6年前 评论

@晓轩 这个方法太香了,棒~

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!