本文实例讲述了PHP实现二维数组根据key进行排序的方法。分享给大家供大家参考,具体如下:

在PHP中内置了很多对数组进行处理的函数,有很多时候我们直接使用其内置函数就能达到我们的需求,得到我们所想要的结果;但是,有的时候我们却不能通过使用内置函数实现我们的要求,这就需要我们自己去编写算法来对自己的想法进行实现。下面就讲述一下如何实现二维数组根据key进行排序。
实现方法:
<?php
/**
* =======================================
* Created by Zhihua_W.
* Author: Zhihua_W
* Date: 2016/11/26 0002
* Time: 下午 2:43
* Project: PHP开发小技巧
* Power: 实现二维数组根据key进行排序
* =======================================
*/
/**
* 二维数组排序
* @param array $arr 需要排序的二维数组
* @param string $keys 所根据排序的key
* @param string $type 排序类型,desc、asc
* @return array $new_array 排好序的结果
*/
function array_sort($arr, $keys, $type = 'desc')
{
$key_value = $new_array = array();
foreach ($arr as $k => $v) {
$key_value[$k] = $v[$keys];
}
if ($type == 'asc') {
asort($key_value);
} else {
arsort($key_value);
}
reset($key_value);
foreach ($key_value as $k => $v) {
$new_array[$k] = $arr[$k];
}
return $new_array;
}
$arr = array(
array(
'name' => 'a',
'sex' => 'm',
'sort' => 5
),
array(
'name' => 'c',
'sex' => 'm',
'sort' => 8
),
array(
'name' => 'g',
'sex' => 'm',
'sort' => 3
),
array(
'name' => 'e',
'sex' => 'w',
'sort' => 6
),
array(
'name' => 'b',
'sex' => 'w',
'sort' => 2
),
);
//打印出原数组
print_r($arr);
//打印出排好序的数组
print_r(array_sort($arr,'name'));
?>
通过打印出的结果我们就可以看到,数组根据“name”进行排序。
//原数组
Array
(
[0] => Array
(
[name] => a
[sex] => m
[sort] => 5
)
[1] => Array
(
[name] => c
[sex] => m
[sort] => 8
)
[2] => Array
(
[name] => g
[sex] => m
[sort] => 3
)
[3] => Array
(
[name] => e
[sex] => w
[sort] => 6
)
[4] => Array
(
[name] => b
[sex] => w
[sort] => 2
)
)
//排序后数组
Array
(
[2] => Array
(
[name] => g
[sex] => m
[sort] => 3
)
[3] => Array
(
[name] => e
[sex] => w
[sort] => 6
)
[1] => Array
(
[name] => c
[sex] => m
[sort] => 8
)
[4] => Array
(
[name] => b
[sex] => w
[sort] => 2
)
[0] => Array
(
[name] => a
[sex] => m
[sort] => 5
)
)
更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php常用函数与技巧总结》、《PHP错误与异常处理方法总结》、《PHP基本语法入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
# PHP
# 二维数组
# key
# 排序
# PHP根据key删除数组中指定的元素
# PHP使用自定义key实现对数据加密解密的方法
# PHP实现向关联数组指定的Key之前插入元素的方法
# PHP 根据key 给二维数组分组
# php array_keys 返回数组的键名
# php array_key_exists() 与 isset() 的区别
# PHP array_key_exists检查键名或索引是否存在于数组中的实现方法
# PHP数组Key强制类型转换实现原理解析
# 程序设计
# 操作技巧
# 相关内容
# 就能
# 有很多
# 感兴趣
# 这就
# 给大家
# 更多关于
# 所述
# 小技巧
# 面向对象
# 如何实现
# 就可以
# 下午
# 对自己的
# 讲述了
# 内置了
# Created
# brush
相关文章:
C#如何序列化对象为XML XmlSerializer用法
实惠建站价格推荐:2025年高性价比自助建站套餐解析
兔展官网 在线制作,怎样制作微信请帖?
常州自助建站费用包含哪些项目?
如何选择高性价比服务器搭建个人网站?
红河网站制作公司,红河事业单位身份证如何上传?
常州企业建站如何选择最佳模板?
新网站制作渠道有哪些,跪求一个无线渠道比较强的小说网站,我要发表小说?
学校免费自助建站系统:智能生成+拖拽设计+多端适配
娃派WAP自助建站:免费模板+移动优化,快速打造专业网站
如何在景安云服务器上绑定域名并配置虚拟主机?
如何用wdcp快速搭建高效网站?
C++如何使用std::optional?(处理可选值)
制作门户网站的参考文献在哪,小说网站怎么建立?
网站视频怎么制作,哪个网站可以免费收看好莱坞经典大片?
巅云智能建站系统:可视化拖拽+多端适配+免费模板一键生成
简单实现Android文件上传
股票网站制作软件,网上股票怎么开户?
,购物网站怎么盈利呢?
定制建站平台哪家好?企业官网搭建与快速建站方案推荐
如何在云主机快速搭建网站站点?
香港服务器租用费用高吗?如何避免常见误区?
网站制作说明怎么写,简述网页设计的流程并说明原因?
如何选择PHP开源工具快速搭建网站?
网站制作公司排行榜,四大门户网站排名?
香港服务器建站指南:免备案优势与SEO优化技巧全解析
建站之星收费标准详解:套餐费用及年费价格表一览
nginx修改上传文件大小限制的方法
如何通过服务器快速搭建网站?完整步骤解析
网站网页制作电话怎么打,怎样安装和使用钉钉软件免费打电话?
用v-html解决Vue.js渲染中html标签不被解析的问题
广州美橙建站如何快速搭建多端合一网站?
成都网站制作公司哪家好,四川省职工服务网是做什么用?
如何快速搭建个人网站并优化SEO?
如何在Tomcat中配置并部署网站项目?
广州顶尖建站服务:企业官网建设与SEO优化一体化方案
建站之星后台密码遗忘?如何快速找回?
湖南网站制作公司,湖南上善若水科技有限公司做什么的?
网站建设制作、微信公众号,公明人民医院怎么在网上预约?
免费制作海报的网站,哪位做平面的朋友告诉我用什么软件做海报比较好?ps还是cd还是ai这几个软件我都会些我是做网页的?
如何打造高效商业网站?建站目的决定转化率
道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?
网站制作的步骤包括,正确网址格式怎么写?
美食网站链接制作教程视频,哪个教做美食的网站比较专业点?
建站之星安装失败:服务器环境不兼容?
如何通过智能用户系统一键生成高效建站方案?
佛山网站制作系统,佛山企业变更地址网上办理步骤?
如何在IIS中配置站点IP、端口及主机头?
建站之星导航配置指南:自助建站与SEO优化全解析
如何挑选优质建站一级代理提升网站排名?
*请认真填写需求信息,我们会在24小时内与您取得联系。