php 按照二位数组中某个指定的字段进行排序

/** * 按照二维数组中某个指定的某个字段进行排序 * @param $array 需要被排序的数组 * @param $flag  排序的标志 1,SORT_DESC 降序 2,SORT_ASC 升序 * @param int $range * @return array */function assortArray2($array,$flag,$keyword){    $sort = array(        ‘direction‘ => $flag, //排序顺序标志 1 ,SORT_DESC 降序;2 ,SORT_ASC 升序        ‘field‘ => $keyword,       //排序字段    );    $arrSort = array();    foreach ($array AS $uniqid => $row) {        foreach ($row AS $key => $value) {            $arrSort[$key][$uniqid] = $value;        }    }    if ($sort[‘direction‘]) {        array_multisort($arrSort[$sort[‘field‘]], constant($sort[‘direction‘]), $array);    }    return $array;}
时间: 2024-10-06 23:19:29

php 按照二位数组中某个指定的字段进行排序的相关文章

二位数组中的查找——杨氏矩阵

------------------------------------------------------------------------------------------------- "杨氏矩阵":即数组元素从左向右依次递增,从上到下依次递增.要想在该数组中查找数,首 先该数组得满足"杨氏矩阵"的特点.为了方便理解我们可以将一个二位数组看作是一个矩阵,假设i 为行,j为列,数组为str,那么只要满足(str[i][j]<str[i][j+1] &a

二维数组中查找指定的数

题目描述: 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. 分析:首先选取数组中右上角的数字.如果该数字等于要查找的数字,查找过程结束.如果该数字大于要查找的数字,就剔除这个数字所在的列.如果该数字小于要查找的数字,就剔除这个数字所在的行. 这样通过每次每次删除行或者列,来缩小查找范围. 代码: public class Solution { public boolean Fi

剑指offer:二位数组中的查找

准备找实习期间,复习一下数据相关内容,刷刷题. 题目描述: 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. 解题思路: 思路一:由于数组有序,一开始直接想每一行分别用二分来做,结果超时,分析下来这样做的复杂度是O(nlogn). 思路二:换个角度,同样是二分,但是考虑到右上角的数是当前行的最大值,是当前列的最小值,处于一个中间状态.所以每次选择右上角元

PHP获取二维数组中的指定若干列【同array_column】

PHP5.3以上  用到了array_map 使用匿名函数进行处理 代码: <?php function array_col($arr = array(), $idx = 0, $newidx = 0) { if (function_exists('array_column') && !is_array($idx) && is_bool(strpos($idx, ',', 1))) { return array_column($arr, $idx, $newidx);

二位数组中的查找

1 public class Solution 2 { 3 public bool Find(int target, int[][] array) 4 { 5 if (array != null) 6 { 7 int rowCnt = array.Length - 1; 8 int colCnt = array[0].Length - 1; 9 10 int row = 0; 11 int col = colCnt; 12 13 while (row <= rowCnt && col

练习题-二维数组中的查找

<剑指offer>中的一个题目: 在一个二位数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下的递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. 例如,下面的二位数组就是每行.每列都递增排序.如果在这个数组中查找数字7,则返回true:如果查找数字5,由于数组不含该数字,则返回false. int matrix[] = { 1, 2, 8, 9, 2, 4, 9, 12, 4, 7, 10, 13, 6, 8, 11, 15 }; 代码

【笔试】21、二维数组中的查找

/** *题目:在一个二位数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二位数组和一个整数, * 判断数组中是否含有该整数 *时间:2015年8月25日09:51:08 *文件:FindInMatrix.java *作者:cutter_point */ package bishi.Offer50.y2015.m08.d25; public class FindInMatrix { /** * 在一个二维数组中寻找到我们要找的数 *

二维数组中的查找(剑指offer_4)

给定一个二维数组,其每一行从左到右递增排序,从上到下也是递增排序.给定一个数,判断这个数是否在该二维数组中. Consider the following matrix: [ [1, 4, 7, 11, 15], [2, 5, 8, 12, 19], [3, 6, 9, 16, 22], [10, 13, 14, 17, 24], [18, 21, 23, 26, 30] ] ] Given target = 5, return true. Given target = 20, return f

如何从二维数组中的多个key中获取指定key的值?

精华 LOVEME96 2016-10-21 10:40:19 浏览(1512) 回答(3) 赞(0) 新手求教:二维数组中一般会有多个key,如果我们要获得指定key的值,应该怎么做? 问题标签: php 回答(3) TimberSwift 2016-10-21 第一种:最简单的方法: foreach遍历数组,代码: foreach ($arr as $key => $value) { $arr2[] = $value['name']; } 另一种方法:使用了array_map $arr2 =