php实例分享之二维数组排序
PHP一维数组排序的利器众多,如sort()、asort()以及arsort()函数,它们对于一维数组的处理游刃有余。当我们面对二维数组时,排序工作就需要我们亲自动手,进行自定义处理。
下面介绍的是一个强大的函数array_sort(),它能够对二维数组按照指定的键值进行排序,无论是升序还是降序都不在话下。让我们先来了解一下这个函数的构造。
函数代码如下:
```php
function array_sort($arr, $keys, $type='asc') {
$keysvalue = $new_array = array();
foreach ($arr as $k => $v) {
$keysvalue[$k] = $v[$keys];
}
if ($type == 'asc') {
asort($keysvalue);
} else {
arsort($keysvalue);
}
reset($keysvalue);
$index = 0; // 用于保存下标不变,或者从0开始重新设定下标。
foreach ($keysvalue as $k => $v) {
$new_array[$index] = $arr[$k];
$index++;
}
return $new_array;
}
```
这个函数的使用非常灵活。假设我们有一个包含多个关联数组的二维数组,每个关联数组都有'name'和'date'这两个键。我们可以通过调用array_sort()函数,按照'date'键的值对数组进行排序。示例代码如下:
```php
$array = array(
array('name' => 'Js', 'date' => '2014-05-01'),
array('name' => 'Sh', 'date' => '2014-04-30'),
array('name' => 'Bj', 'date' => '2014-05-02')
);
$arrayList = array_sort($array, 'date');
print_r($arrayList);
```
在这个例子中,输出的结果将会是按照'date'键的值升序排列的二维数组。如果你希望进行降序排列,只需在调用array_sort()函数时,将第二个参数改为'desc'即可。这个函数将会是你的二维数组排序的得力助手。
编程语言
- php实例分享之二维数组排序
- Web 开发常用工具 大家自己查找下载
- 解析CodeIgniter自定义配置文件
- Joomla实现组件中弹出一个模式(modal)窗口的方法
- Vue-CLI3.x 设置反向代理的方法
- JavaScript实现定时页面跳转功能示例
- php生成随机密码自定义函数代码(简单快速)
- Linux下php5.4启动脚本
- 使用jQuery获取data-的自定义属性
- php判断数组元素中是否存在某个字符串的方法
- 网站性能优化之HTTP请求过程简述
- php 生成唯一id的几种解决方法
- 微信小程序 iPhoneX底部安全区域(底部小黑条)适
- asp下轻松实现将上传图片到数据库的代码
- PHP获取指定函数定义在哪个文件中以及其所在的
- php使用session二维数组实例