首頁 後端開發 php教程 php基础篇-二维数组排序姐妹篇

php基础篇-二维数组排序姐妹篇

Jun 23, 2016 pm 01:51 PM
php 基礎 陣列

前面介绍了php多维数组排序的一个函数array_multisort() ,想了解的人可以点击二维数组排序 array_multisort


下面介绍下不适用array_multisort()进行多维数组的排序。

这里介绍下2个php排序函数,一个是asort,一个是arsort.

asort(array,sorttype) 函数对数组进行排序并保持索引关系。主要用于对那些单元顺序很重要的结合数组进行排序。

可选的第二个参数包含了附加的排序标识。

  • SORT_REGULAR - 默认。以它们原来的类型进行处理(不改变类型)。
  • SORT_NUMERIC - 把值作为数字来处理
  • SORT_STRING - 把值作为字符串来处理
  • SORT_LOCALE_STRING - 把值作为字符串来处理,基于本地设置。
  • 如果成功则返回 TRUE,否则返回 FALSE。


    arsort(array,sorttype) 函数对数组进行逆向排序并保持索引关系。主要用于对那些单元顺序很重要的结合数组进行排序。这个函数的用法和asort一样,只不过这个是对数组的索引进行逆向排序。


    下面给出二维数组的排序算法:

    <?php 
    登入後複製
    <span style="white-space:pre">	</span>function array_sort($arr,$key,$type='asc'){ <span style="white-space:pre">		</span>$keyvalues = $new_array = array();<span style="white-space:pre">		</span>foreach ($arr as $k=>$v){<span style="white-space:pre">			</span>$keyvalues[$k] = $v[$key];<span style="white-space:pre">		</span>}<span style="white-space:pre">		</span>if($type == 'asc'){<span style="white-space:pre">			</span>asort($keyvalues);<span style="white-space:pre">		</span>}else{<span style="white-space:pre">			</span>arsort($keyvalues);<span style="white-space:pre">		</span>}<span style="white-space:pre">		</span>foreach ($keyvalues as $k=>$v){<span style="white-space:pre">			</span>$temparray[$k] = $arr[$k];<span style="white-space:pre">		</span>}<span style="white-space:pre">		</span>return $temparray; <span style="white-space:pre">	</span>}<span style="white-space:pre">	</span>$student = array(<span style="white-space:pre">		</span>array('name'=>'张三','age'=>'18','weight'=>100,'height'=>180),<span style="white-space:pre">		</span>array('name'=>'李四','age'=>'20','weight'=>200,'height'=>150),<span style="white-space:pre">		</span>array('name'=>'王五','age'=>'30','weight'=>150,'height'=>165),<span style="white-space:pre">		</span>array('name'=>'赵六','age'=>'50','weight'=>90,'height'=>173),<span style="white-space:pre">		</span>array('name'=>'孙七','age'=>'35','weight'=>160,'height'=>170)<span style="white-space:pre">	</span>);<span style="white-space:pre">	</span>$studentlist = array_sort($student,'weight');<span style="white-space:pre">	</span>var_dump($studentlist);?>
    登入後複製


    通过asort这个函数,将保留二维数组的索引排序,再通过这个索引,即可得到排序好的二维数组的索引对应的值。
    本網站聲明
    本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

    熱AI工具

    Undresser.AI Undress

    Undresser.AI Undress

    人工智慧驅動的應用程序,用於創建逼真的裸體照片

    AI Clothes Remover

    AI Clothes Remover

    用於從照片中去除衣服的線上人工智慧工具。

    Undress AI Tool

    Undress AI Tool

    免費脫衣圖片

    Clothoff.io

    Clothoff.io

    AI脫衣器

    AI Hentai Generator

    AI Hentai Generator

    免費產生 AI 無盡。

    熱門文章

    R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
    2 週前 By 尊渡假赌尊渡假赌尊渡假赌
    倉庫:如何復興隊友
    4 週前 By 尊渡假赌尊渡假赌尊渡假赌
    Hello Kitty Island冒險:如何獲得巨型種子
    3 週前 By 尊渡假赌尊渡假赌尊渡假赌

    熱工具

    記事本++7.3.1

    記事本++7.3.1

    好用且免費的程式碼編輯器

    SublimeText3漢化版

    SublimeText3漢化版

    中文版,非常好用

    禪工作室 13.0.1

    禪工作室 13.0.1

    強大的PHP整合開發環境

    Dreamweaver CS6

    Dreamweaver CS6

    視覺化網頁開發工具

    SublimeText3 Mac版

    SublimeText3 Mac版

    神級程式碼編輯軟體(SublimeText3)

    適用於 Ubuntu 和 Debian 的 PHP 8.4 安裝和升級指南 適用於 Ubuntu 和 Debian 的 PHP 8.4 安裝和升級指南 Dec 24, 2024 pm 04:42 PM

    適用於 Ubuntu 和 Debian 的 PHP 8.4 安裝和升級指南

    CakePHP 專案配置 CakePHP 專案配置 Sep 10, 2024 pm 05:25 PM

    CakePHP 專案配置

    CakePHP 日期和時間 CakePHP 日期和時間 Sep 10, 2024 pm 05:27 PM

    CakePHP 日期和時間

    CakePHP 檔案上傳 CakePHP 檔案上傳 Sep 10, 2024 pm 05:27 PM

    CakePHP 檔案上傳

    CakePHP 路由 CakePHP 路由 Sep 10, 2024 pm 05:25 PM

    CakePHP 路由

    討論 CakePHP 討論 CakePHP Sep 10, 2024 pm 05:28 PM

    討論 CakePHP

    如何設定 Visual Studio Code (VS Code) 進行 PHP 開發 如何設定 Visual Studio Code (VS Code) 進行 PHP 開發 Dec 20, 2024 am 11:31 AM

    如何設定 Visual Studio Code (VS Code) 進行 PHP 開發

    CakePHP 快速指南 CakePHP 快速指南 Sep 10, 2024 pm 05:27 PM

    CakePHP 快速指南

    See all articles