十年網(wǎng)站開發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
這篇文章主要介紹“如何解決PHP中數(shù)組的排序和打亂問題”,在日常操作中,相信很多人在如何解決PHP中數(shù)組的排序和打亂問題問題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”如何解決PHP中數(shù)組的排序和打亂問題”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!
成都創(chuàng)新互聯(lián)是一家專業(yè)提供吉隆企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、HTML5建站、小程序制作等業(yè)務(wù)。10年已為吉隆眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)的建站公司優(yōu)惠進(jìn)行中。
array_multisort
函數(shù)-對(duì)多個(gè)數(shù)組進(jìn)行排序
在PHP中array_multisort
函數(shù)能夠輸入一個(gè)或者多個(gè)數(shù)組,函數(shù)會(huì)先給第一個(gè)數(shù)組排序,然后接著對(duì)下一組進(jìn)行排序。array_multisort
函數(shù)的基本語法格式如下:
array_multisort(array1,sorting order,sorting type,array2,array3...)
其中需要注意的是:
參數(shù)array1
是必須要有的,是要進(jìn)行排序的數(shù)組,參數(shù)array2
、3是可選的,也是要進(jìn)行排序的數(shù)組。參數(shù)sorting order
也是一個(gè)可選的參數(shù),在默認(rèn)的情況下參數(shù)表示的是SORT_ASC,表示的是數(shù)組排序是升序,當(dāng)單數(shù)sorting order為SORT_DESC
的時(shí)候,表示的是按降序排列。
參數(shù)sorting type
也是一個(gè)可選參數(shù),默認(rèn)情況下的值為SORT_REGULAR
表示的是,數(shù)組排序按照常規(guī)順序排列。當(dāng)參數(shù)的值為SORT_NUMERIC
的時(shí)候表示的是將數(shù)組中的元素當(dāng)做數(shù)字來進(jìn)行處理。當(dāng)參數(shù)的值為SORT_STRING
表示的是將數(shù)組中的元素當(dāng)做字符串來進(jìn)行處理。當(dāng)參數(shù)的值為SORT_LOCALE_STRING
表示的是一顆通過setlocale
函數(shù)來進(jìn)行更改的作為字符串處理。當(dāng)參數(shù)的值為SORT_NATURAL
表示的是類似 natsort
() 的自然排序。
使用array_multisort
函數(shù)對(duì)字符串進(jìn)行排序,鍵名為字符串的元素,鍵名會(huì)保留,但是鍵名為數(shù)字的會(huì)被重新索引。這個(gè)索引規(guī)則還是一樣的。
如果排序成功的話,返回的結(jié)果是true
;如果排序失敗,返回的結(jié)果是false
。
下面我們通過示例來看一下array_multisort
函數(shù)的基本用法,示例如下:
'; print_r($a2); ?>
輸出結(jié)果:
上述示例中,返回的結(jié)果是進(jìn)行了升序的排序,下面我們來看一下,當(dāng)兩個(gè)值相同的時(shí)候,輸出結(jié)果會(huì)有什么變化,示例如下:
'; print_r($a2); ?>
輸出結(jié)果:
上述示例中,當(dāng)數(shù)組中的兩個(gè)元素都相同的時(shí)候,并不會(huì)被覆蓋,而是鍵名不同重新排序。
下面我們?cè)趤砜匆粋€(gè)綜合的實(shí)例,當(dāng)我們合并兩個(gè)數(shù)組并且按照降序進(jìn)行排列,輸出結(jié)果會(huì)發(fā)生什么變化,示例如下:
輸出結(jié)果:
上述中我們通過array_multisort
函數(shù)能夠?qū)?shù)組元素進(jìn)行排序,下面我們來介紹一下shuffle函數(shù)。它能夠?qū)?shù)組打亂。
shuffle
函數(shù)-重新排序數(shù)組
在PHP中既然有函數(shù)能夠?qū)?shù)組元素進(jìn)行有序的排序,那同樣的也有辦法能夠?qū)?shù)組進(jìn)行重新排序,也就是將數(shù)組打亂。shuffle
函數(shù)的基本語法結(jié)構(gòu)如下:
shuffle(array)
其中參數(shù)array就是需要進(jìn)行重新排序的數(shù)組,shuffle
() 函數(shù)把數(shù)組中的元素按隨機(jī)順序重新排列。數(shù)組中原來的鍵名會(huì)被刪除,新的數(shù)組會(huì)有新的鍵名。
函數(shù)如果排序成功,返回的結(jié)果是true
,如果失敗,返回的結(jié)果是flase
。
下面我們通過示例來看一下shuffle
函數(shù)的使用,示例如下:
"red","b"=>"green","c"=>"blue","d"=>"yellow","e"=>"purple"); shuffle($my_array); print_r($my_array); ?>
輸出結(jié)果:
上述示例中,通過shuffle
函數(shù)將數(shù)組進(jìn)行重新排列,并且每執(zhí)行一次數(shù)組的排列順序就會(huì)改變。
到此,關(guān)于“如何解決PHP中數(shù)組的排序和打亂問題”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!