欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PHP實(shí)現(xiàn)二維數(shù)組根據(jù)key進(jìn)行排序的方法

 更新時(shí)間:2016年12月30日 11:34:12   作者:Zhihua_W  
這篇文章主要介紹了PHP實(shí)現(xiàn)二維數(shù)組根據(jù)key進(jìn)行排序的方法,涉及php數(shù)組的遍歷與排序相關(guān)操作技巧,需要的朋友可以參考下

本文實(shí)例講述了PHP實(shí)現(xiàn)二維數(shù)組根據(jù)key進(jìn)行排序的方法。分享給大家供大家參考,具體如下:

在PHP中內(nèi)置了很多對(duì)數(shù)組進(jìn)行處理的函數(shù),有很多時(shí)候我們直接使用其內(nèi)置函數(shù)就能達(dá)到我們的需求,得到我們所想要的結(jié)果;但是,有的時(shí)候我們卻不能通過(guò)使用內(nèi)置函數(shù)實(shí)現(xiàn)我們的要求,這就需要我們自己去編寫算法來(lái)對(duì)自己的想法進(jìn)行實(shí)現(xiàn)。下面就講述一下如何實(shí)現(xiàn)二維數(shù)組根據(jù)key進(jìn)行排序。

實(shí)現(xiàn)方法:

<?php
/**
 * =======================================
 * Created by Zhihua_W.
 * Author: Zhihua_W
 * Date: 2016/11/26 0002
 * Time: 下午 2:43
 * Project: PHP開發(fā)小技巧
 * Power: 實(shí)現(xiàn)二維數(shù)組根據(jù)key進(jìn)行排序
 * =======================================
 */
/**
 * 二維數(shù)組排序
 * @param array $arr 需要排序的二維數(shù)組
 * @param string $keys 所根據(jù)排序的key
 * @param string $type 排序類型,desc、asc
 * @return array $new_array 排好序的結(jié)果
 */
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
  ),
);
//打印出原數(shù)組
print_r($arr);
//打印出排好序的數(shù)組
print_r(array_sort($arr,'name'));
?>

通過(guò)打印出的結(jié)果我們就可以看到,數(shù)組根據(jù)“name”進(jìn)行排序。

//原數(shù)組
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
    )
)
//排序后數(shù)組
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
    )
)

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》、《php常用函數(shù)與技巧總結(jié)》、《PHP錯(cuò)誤與異常處理方法總結(jié)》、《PHP基本語(yǔ)法入門教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php+mysql數(shù)據(jù)庫(kù)操作入門教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總

希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論