PHP一維 二維以及多維的陣列排序方法

2021-06-02 14:28:18 字數 1911 閱讀 3762

1、一維陣列排序

a、sort–本函式對陣列進行排序。當本函式結束時陣列單元將被從最低到最高重新安排。注:本函式為 array 中的單元賦予新的鍵名。這將刪除原有的鍵名而不僅是重新排序

<?php$fruits

=array

("lemon"

,"orange"

,"banana",);

sort

($fruits

);foreach

($fruits

as$key

=>

$val

)?>

b、asort — 對陣列進行排序並保持索引關係。本函式對陣列進行排序,陣列的索引保持和單元的關聯。主要用於對那些單元順序很重要的結合陣列進行排序。

<?php$fruits

=array

("d"

=>

"lemon"

,"a"

=>

"orange"

,"b"

=>

"banana"

,"c"

=>

);arsort

($fruits

);foreach

($fruits

as$key

=>

$val

)?>

2、多維陣列排序

<?php$data

=array

('volume' =>

67, 'edition' =>2);

$data

=array

('volume' =>

86, 'edition' =>1);

$data

=array

('volume' =>

85, 'edition' =>6);

$data

=array

('volume' =>

98, 'edition' =>2);

$data

=array

('volume' =>

86, 'edition' =>6);

$data

=array

('volume' =>

67, 'edition' =>

7);?>

本例中將把 volume 降序排列,把 edition 公升序排列

現在有了包含有行的陣列,但是 array_multisort() 需要乙個包含列的陣列,因此用以下**來取得列,然後排序

<?php// 取得列的列表

foreach

($data

as$key

=>

$row

)// 將資料根據 volume 降序排列,根據 edition 公升序排列

// 把 $data 作為最後乙個引數,以通用鍵排序

array_multisort

($volume

, sort_desc,

$edition

, sort_asc,

$data

);?>

資料集合現在排好序了,結果如下:

volume | edition

——-+——–

98 | 2

86 | 1

86 | 6

85 | 6

67 | 2

67 | 7

c 一維陣列,二維陣列,多維陣列。

陣列就是給乙個變數定義多個字元,可以是string也可以是int。或者說是一組變數。可以更加方便的操作大量資料。陣列的定義 1 陣列裡面的內容必須是同一型別 2 資料必須有長度限制 一維陣列 一 資料型別 變數名 new 資料型別 長度 陣列定義 string a new string 這裡寫陣列包...

二維陣列,多維陣列

一.二維陣列 二維陣列的定義 資料型別 陣列名 常量表示式1 常量表示式2 例如 int array 3 3 二維陣列array 3 3 相當於是由三個含有三個元素的一維陣列所組成的.陣列元素個數怎麼求 兩個維度的下標相乘 訪問二維陣列中的元素 雙下標 多維陣列 三維陣列 陣列名 常量表示式1 常量...

一維陣列複習,二維陣列與多維陣列

輸入班級人數,輸入每個人的分數,求班級最高分,最低分,以及去掉兩個最高分並且去掉兩個最低分之後的所有人員的平均分。輸入班級人數,輸入乙個人名,輸入乙個分數。求班級最高分是多少,是誰的分數 注意姓名跟分數對應 運用兩個一維陣列 運用乙個一維陣列 乙個元素是乙個點,一維陣列是一條線,二維陣列是乙個面,三...