zoukankan      html  css  js  c++  java
  • php array_column 和array_multisort函数实现按某一字段对二维数组进行排序-test

    在工作中碰到一个页面如表格似的展示多条数据,要求根据其中的修改时间对数据进行排序,

    数据格式类似于 

    $a = array(

      0=>array(

        editTime=>''

        addTime=>''

        )

      1=>array(

          editTime=>''

          addTime=>''

         )


      )

    如果要让自己写的话,估计得新建一个数组,然后通过对修改时间进行冒泡排序,完成数组排序

    而PHP 提供的array_multisort这个函数很强大,他可以同时输入多个数组,对第一个数组的排序操作,将会作用于后续数组,由此我们可以先取出修改时间

    作为一个数组,对其进行值降序(或升序)排序,然后就可以影响原来的数组以完成排序目的。

    示例:

    $a = array(

      0=>array(

        editTime=>17

        addTime=>15

        )

      1=>array(

          editTime=>19

          addTime=>16

         )

      )

    利用array_column取出修改时间的值

    $editTime = array_column($a, 'editTime');

    array_multisort($editTime, SORT_DESC , SORT_NUMERIC, $a);

    结果

    editTime = array(19, 17);

    $a = array(

      0=>array(

          editTime=>19

          addTime=>18

        )

      1=>array(

        editTime=>17

        addTime=>15

         )

      )

    一些关于这个函数的具体描述可以在这里找到http://www.php.net/manual/zh/function.array-multisort.php

  • 相关阅读:
    dom4j的安装
    OWl本体语言学习笔记
    java学习笔记之链表(约瑟夫问题)
    C#打开指定文件夹及下载文件代码示例
    如何把phpStorm打造成自己的专属IDE
    SQL和TSQL之间的区别
    整数的划分(分治递归)
    整数的划分(变形)(分治递归)
    子序列 (Data_Structure)
    找球号(Hash)
  • 原文地址:https://www.cnblogs.com/tpwBlog/p/8654404.html
Copyright © 2011-2022 走看看