PHP 簡(jiǎn)單數(shù)組排序?qū)崿F(xiàn)代碼
php 簡(jiǎn)單數(shù)組排序的方法,供大家學(xué)習(xí)參考。
PHP不知道如何去比較兩個(gè)數(shù)組,需要建立一個(gè)比較它們的方法。
一、數(shù)字索引數(shù)組的初始化
$arr = array('100', '200', '300');
以上就代碼就創(chuàng)建了一個(gè)數(shù)組,并且包含3個(gè)值。PHP數(shù)組的數(shù)字索引是從0開(kāi)始的。所以$arr[0]的值為100。
可以用一個(gè)簡(jiǎn)單的 "="號(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ù)組:
$nums = range(1,10);
這個(gè)函數(shù)還有第三個(gè)參數(shù),可以設(shè)定數(shù)字增長(zhǎng)的步長(zhǎng)。如: range(1,10,2)就是1到10之間的奇數(shù)。
PHP還支持相關(guān)數(shù)組,就是可以將變量值和關(guān)鍵字關(guān)聯(lián)起來(lái)。如:
$arr = array('one'=>100, 'two'=>200, 'three'=>300);
二、數(shù)組排序
1、sort()函數(shù):按數(shù)組值的字母或數(shù)字的升序排序。
sort()函數(shù)區(qū)分大小寫(xiě),所有大寫(xiě)字母都在小寫(xiě)字母的前面。這個(gè)函數(shù)還有第二個(gè)參數(shù),可以傳遞SORT_NUMERIC或SORT_STRING或SORT_REGULAR(默認(rèn)值)。 指定排序功能是非常有用的,例如,當(dāng)妖比較數(shù)字12和2時(shí),從字符串來(lái)看,12要小于2,而從數(shù)字角度看正好相反。
2、asort()函數(shù),ksort()函數(shù):
如果使用了相關(guān)數(shù)組,在排序后還要保持關(guān)鍵字和值的排序仍然一致。就要用到這兩個(gè)函數(shù)了。ksort就是按照key(關(guān)鍵字)來(lái)排序,asort就是value(按照值)來(lái)排序(都是升序)。
例如有數(shù)組:
$price = array('蘋(píng)果'=5,'香蕉'=6,'荔枝'=7);
我們用ksort($price);排序后結(jié)果是:荔枝--7,蘋(píng)果--5,香蕉--6
用asort($price);排序后的結(jié)果是:蘋(píng)果--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ù)組排序方法總結(jié) 推薦收藏
- php中二維數(shù)組排序問(wèn)題方法詳解
- array_multisort實(shí)現(xiàn)PHP多維數(shù)組排序示例講解
- php簡(jiǎn)單實(shí)現(xiàn)多維數(shù)組排序的方法
- PHP 冒泡排序 二分查找 順序查找 二維數(shù)組排序算法函數(shù)的詳解
- php不用內(nèi)置函數(shù)對(duì)數(shù)組排序的兩個(gè)算法代碼
- php 數(shù)組排序 array_multisort與uasort的區(qū)別
- php關(guān)于array_multisort多維數(shù)組排序的使用說(shuō)明
- PHP數(shù)組排序之sort、asort與ksort用法實(shí)例
- PHP常見(jiàn)數(shù)組排序方法小結(jié)
相關(guān)文章
- PHP Token(令牌)設(shè)計(jì) 設(shè)計(jì)目標(biāo): 避免重復(fù)提交數(shù)據(jù). 檢查來(lái)路,是否是外部提交 匹配要執(zhí)行的動(dòng)作(如果有多個(gè)邏輯在同一個(gè)頁(yè)面實(shí)現(xiàn),比如新增,刪除,修改放到一個(gè)PHP文件里操作) 這里所說(shuō)的token是在頁(yè)面顯示的時(shí)候,寫(xiě)到FORM的一個(gè)隱藏表單項(xiàng)(type=hidden). token不可明文,如果是明文,那就太危險(xiǎn)了,所以要采用一定的加密方式.密文要可逆.俺算法很白癡,所以采用了網(wǎng)上一個(gè)現(xiàn)成的方法.2008-03-03
PHP常見(jiàn)的幾種攻擊方式實(shí)例小結(jié)
這篇文章主要介紹了PHP常見(jiàn)的幾種攻擊方式,結(jié)合實(shí)例形式總結(jié)分析了php SQL注入、XSS攻擊、文件包含漏洞等php常見(jiàn)攻擊方式,需要的朋友可以參考下2019-04-04不錯(cuò)的PHP學(xué)習(xí)之php4與php5之間會(huì)穿梭一點(diǎn)點(diǎn)感悟
不錯(cuò)的PHP學(xué)習(xí)之php4與php5之間會(huì)穿梭一點(diǎn)點(diǎn)感悟...2007-05-05php實(shí)現(xiàn)encode64編碼類(lèi)實(shí)例
這篇文章主要介紹了php實(shí)現(xiàn)encode64編碼類(lèi),實(shí)例分析了php實(shí)現(xiàn)encode64編碼的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-03-03基于PHP輸出緩存(output_buffering)的深入理解
本篇文章是對(duì)PHP輸出緩存(output_buffering)的使用進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06php基礎(chǔ)知識(shí):控制結(jié)構(gòu)
php基礎(chǔ)知識(shí):控制結(jié)構(gòu)...2006-12-12PHP 利用AJAX獲取網(wǎng)頁(yè)并輸出的實(shí)現(xiàn)代碼(Zjmainstay)
PHP 利用AJAX獲取網(wǎng)頁(yè)并輸出的實(shí)現(xiàn)代碼,需要的朋友可以參考下2012-08-08PHP的反射動(dòng)態(tài)獲取類(lèi)方法、屬性、參數(shù)操作示例
這篇文章主要介紹了PHP的反射動(dòng)態(tài)獲取類(lèi)方法、屬性、參數(shù)操作,結(jié)合實(shí)例形式分析了PHP反射的功能、原理及基于反射動(dòng)態(tài)獲取類(lèi)方法、屬性、參數(shù)相關(guān)操作技巧,需要的朋友可以參考下2020-03-03