|
php 簡單數(shù)組排序的方法,供大家學(xué)習(xí)參考。
php不知道如何去比較兩個(gè)數(shù)組,需要建立一個(gè)比較它們的方法。
一、數(shù)字索引數(shù)組的初始化
復(fù)制代碼 代碼如下:
$arr = array('100', '200', '300');
以上就代碼就創(chuàng)建了一個(gè)數(shù)組,并且包含3個(gè)值。php數(shù)組的數(shù)字索引是從0開始的。所以$arr[0]的值為100。
可以用一個(gè)簡單的 "="號(hào)把一個(gè)數(shù)組中的值復(fù)制到另一個(gè)數(shù)組中。
如果需要將按升序排列的數(shù)字保存到一個(gè)數(shù)組中,可以使用range()函數(shù)自動(dòng)創(chuàng)建這個(gè)數(shù)組。
如以下代碼將創(chuàng)建一個(gè)從1到10的數(shù)字?jǐn)?shù)組:
復(fù)制代碼 代碼如下:
$nums = range(1,10);
這個(gè)函數(shù)還有第三個(gè)參數(shù),可以設(shè)定數(shù)字增長的步長。如: range(1,10,2)就是1到10之間的奇數(shù)。
php還支持相關(guān)數(shù)組,就是可以將變量值和關(guān)鍵字關(guān)聯(lián)起來。如:
復(fù)制代碼 代碼如下:
$arr = array('one'=>100, 'two'=>200, 'three'=>300);
二、數(shù)組排序
1、sort()函數(shù):按數(shù)組值的字母或數(shù)字的升序排序。
sort()函數(shù)區(qū)分大小寫,所有大寫字母都在小寫字母的前面。這個(gè)函數(shù)還有第二個(gè)參數(shù),可以傳遞SORT_NUMERIC或SORT_STRING或SORT_REGULAR(默認(rèn)值)。 指定排序功能是非常有用的,例如,當(dāng)妖比較數(shù)字12和2時(shí),從字符串來看,12要小于2,而從數(shù)字角度看正好相反。
2、asort()函數(shù),ksort()函數(shù):
如果使用了相關(guān)數(shù)組,在排序后還要保持關(guān)鍵字和值的排序仍然一致。就要用到這兩個(gè)函數(shù)了。ksort就是按照key(關(guān)鍵字)來排序,asort就是value(按照值)來排序(都是升序)。
例如有數(shù)組:
$price = array('蘋果'=5,'香蕉'=6,'荔枝'=7);
我們用ksort($price);排序后結(jié)果是:荔枝--7,蘋果--5,香蕉--6
用asort($price);排序后的結(jié)果是:蘋果--5,香蕉--6,荔枝--7
對(duì)應(yīng)的這幾個(gè)反相排序就是在sort前面加一個(gè)'r'。也就是rsort(),arsort(),krsort()
三、多維數(shù)組的排序
php知道如何比較兩個(gè)數(shù)字或字符串,但多維數(shù)組的每個(gè)元素都是數(shù)組。
php不知道如何去比較兩個(gè)數(shù)組,所以需要建立一個(gè)比較它們的方法。
php技術(shù):PHP 簡單數(shù)組排序?qū)崿F(xiàn)代碼,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。