PHP实现数组根据某个单元字段排序操作示例

yipeiwu_com5年前PHP代码库

本文实例讲述了PHP实现数组根据某个单元字段排序操作。分享给大家供大家参考,具体如下:

如题,给出一个PHP数组,数组结构如下:

$arr = array(
  array(
    'name'=>'sadas',
    'norder'=>1
  ),
  array(
    'name'=>'sadas',
    'norder'=>11
  ),
  array(
    'name'=>'sadas',
    'norder'=>123
  ),
  array(
    'name'=>'sadas',
    'norder'=>11
  )
);

需要是需要按照norder从大到小的顺序,重新排列$arr数组的顺序。

可以使用array_multisort函数来帮助排序:

function p($arr){
  echo "<pre>";
  print_r($arr);
  echo "</pre>";
}
$arr = array(
  array(
    'name'=>'sadas',
    'norder'=>1
  ),
  array(
    'name'=>'sadas',
    'norder'=>11
  ),
  array(
    'name'=>'sadas',
    'norder'=>123
  ),
  array(
    'name'=>'sadas',
    'norder'=>11
  )
);
$flag = array();
foreach($arr as $v){
  $flag[] = $v['norder'];
}
array_multisort($flag, SORT_DESC, $arr);
p($arr);

运行结果:

Array
(
    [0] => Array
        (
            [name] => sadas
            [norder] => 123
        )
    [1] => Array
        (
            [name] => sadas
            [norder] => 11
        )
    [2] => Array
        (
            [name] => sadas
            [norder] => 11
        )
    [3] => Array
        (
            [name] => sadas
            [norder] => 1
        )
)

PS:这里再为大家推荐一款关于排序的演示工具供大家参考:

在线动画演示插入/选择/冒泡/归并/希尔/快速排序算法过程工具:
http://tools.jb51.net/aideddesign/paixu_ys

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php排序算法总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP常用遍历算法与技巧总结》及《PHP数学运算技巧总结

希望本文所述对大家PHP程序设计有所帮助。

相关文章

PHP利用APC模块实现文件上传进度条的方法

本文实例讲述了PHP利用APC模块实现文件上传进度条的方法。分享给大家供大家参考。具体分析如下: 以前的php5.2之前的版本是不能可使用APC模块的,因为之前的压根就没有这个APC模块...

PHP实现ASCII码与字符串相互转换的方法

本文实例讲述了PHP实现ASCII码与字符串相互转换的方法。分享给大家供大家参考,具体如下: <?php class ascii { /** * 将ascii...

PHP图片处理之图片背景、画布操作

像验证码或根据动态数据生成统计图标,以及前面介绍的一些GD库操作等都属于动态绘制图像。而在web开发中,也会经常去处理服务器中已存在的图片。例如,根据一些需求对图片进行缩放、加水印、裁剪...

php生成验证码函数

php生成验证码函数

php生成验证码的函数,实用靠谱。先上下生成的验证码的效果图(这里生成的是全数字的验证码的示例效果): 下面是php生成验证码的源码: <?php sessio...

php zend 相对路径问题

<?php define ('P_S', PATH_SEPARATOR); define ('ROOT', "../"); set_include_path(ROOT .P_S ....