PHP中數(shù)組元素升序、降序及重新排序的函數(shù)_PHP教程
推薦:MagickWand for PHP linux INSTALL 安裝ImageMagick是功能強(qiáng)大的服務(wù)器端圖片處理工具,比GD強(qiáng)大多了。很多PHP的網(wǎng)站隨著應(yīng)用的廣泛,開始用到ImageMagick,雖然其配置并不復(fù)雜,但如果幾個(gè)需要注意得地方?jīng)]有注意,恐怕就要浪費(fèi)很多
在PHP數(shù)組學(xué)習(xí)摘錄部分了解到最基本的PHP數(shù)組的建立和數(shù)組元素的顯示。需要深入學(xué)習(xí)下PHP數(shù)組的相關(guān)操作。首先接觸的就是數(shù)組元素的升序、降序的排序問題。
1、快速創(chuàng)建數(shù)組的函數(shù)range()
比如range()函數(shù)可以快速創(chuàng)建從1到9的數(shù)字?jǐn)?shù)組:
以下為引用的內(nèi)容: <?php |
當(dāng)然,使用range(9,1)則創(chuàng)建了9到1的數(shù)字?jǐn)?shù)組。同時(shí),range()還可以創(chuàng)建從a到z 的字符數(shù)組:
以下為引用的內(nèi)容: <?php |
使用字符數(shù)組時(shí)注意大小寫,比如range(A,z)和range(a,Z)是不一樣的。
range()函數(shù)還具有第三個(gè)參數(shù),該參數(shù)的作用是設(shè)定步長,比如range(1,9,3)創(chuàng)建的數(shù)組元素是:1、4、7
2、PHP中常規(guī)數(shù)組的排序
一般數(shù)組中的各元素均以字符或數(shù)字表現(xiàn)的,所以可對(duì)數(shù)組元素進(jìn)行升序排列,該功能函數(shù)為sort()。比如:
以下為引用的內(nèi)容: <?php |
升序排序后的數(shù)組元素顯示為 birth name nation sex,當(dāng)然,sort()函數(shù)是區(qū)分字母大小寫的(字母從大到小的順序是:A…Z…a…z)
Sort()函數(shù)還具有第二參數(shù),用來說明升序的規(guī)則是用來比較數(shù)字還是字符串的。比如:
以下為引用的內(nèi)容: <?php echo "<br />---按字符升序排序---<br />"; |
SORT_NUMERIC和SORT_STRING用來聲明按數(shù)字或字符的升序排列。如果按照數(shù)字升序排列是:3,26;但如果按照字符升序排列則是:26,3了。
PHP中除了升序函數(shù)以外,還有降序或稱反向排列的函數(shù),就是rsort()函數(shù),比如:
以下為引用的內(nèi)容: $num1=range(1,9); |
這里其實(shí)就相當(dāng)于range(9,1)
3、PHP中關(guān)聯(lián)數(shù)組的排序
PHP除了支持?jǐn)?shù)字索引數(shù)組以外,還支持相關(guān)數(shù)組。比如如下數(shù)組就是一個(gè)相關(guān)(關(guān)聯(lián))數(shù)組:
以下為引用的內(nèi)容: $peoples=array('xm'=>'name','xb'=>'sex','mz'=>'nation','cs'=>'birth'); |
使用sort($peoples)默認(rèn)即是按照元素定義值的升序排序,在關(guān)聯(lián)數(shù)組中可使用asort()函數(shù)表示,關(guān)聯(lián)數(shù)組中最主要的則是可按照關(guān)鍵字(如xm、xb、mz等)的升序排序,該方法是用函數(shù)ksort()函數(shù)。
以下為引用的內(nèi)容: <?php echo "<br />--按元素值升序排列--<br />"; echo "<br />--按關(guān)鍵字升序排列--<br />"; |
和常規(guī)數(shù)組擁有sort()升序函數(shù)的反向排序rsort()降序函數(shù)相對(duì)應(yīng)的,關(guān)聯(lián)數(shù)組也有對(duì)應(yīng)的降序函數(shù):asort()函數(shù)和arsort()函數(shù)、ksort()函數(shù)和krsort()函數(shù)。
記憶:原型函數(shù)是sort(),其中a、k表示關(guān)聯(lián)數(shù)組相關(guān)必須前置,反向排序使用r修飾。
4、PHP數(shù)組元素隨機(jī)排序
PHP中使用shuffle()函數(shù)將數(shù)組元素進(jìn)行隨機(jī)的重新排序,比如:
以下為引用的內(nèi)容: <?php foreach ($fer as $mychrs) |
每次都會(huì)顯示不同的排序組合
5、PHP數(shù)組按原順序反向排序
PHP中可使用array_reverse()函數(shù)將數(shù)組元素按原順序反向排序。比如:
以下為引用的內(nèi)容: <?php $fer=array_reverse($fer); cnbruce cnrose cnjames cnanne |
注意這里的 $fer=array_reverse($fer); 在此之前的任何排序函數(shù)均只是聲明引用,并沒有對(duì)原有數(shù)組進(jìn)行重新定義,但當(dāng)我調(diào)試該函數(shù)時(shí)則需要重新定義。這是因?yàn)閍rray_reverse()是返回原數(shù)組修改后的副本,如果不需要原有數(shù)組,可對(duì)原數(shù)組重新定義達(dá)到覆蓋的目的,否則就另外定義數(shù)組保存副本,比如:$fer_bak=array_reverse($fer);
分享:讓PHP管理小型的郵件列表最近有一個(gè)讀者問我關(guān)于ThickBook新聞列表中處理訂閱/退訂的機(jī)制,并且是如何與實(shí)際的發(fā)送信息相配合,給郵件列表中的所有收信人的。問題提的不錯(cuò),有一個(gè)相當(dāng)容易的方法,但是我首先要說的是我
- PHPNOW安裝Memcached擴(kuò)展方法詳解
- php記錄頁面代碼執(zhí)行時(shí)間
- PHP中獎(jiǎng)概率的抽獎(jiǎng)算法程序代碼
- apache設(shè)置靜態(tài)文件緩存方法介紹
- php對(duì)圖像的各種處理函數(shù)代碼小結(jié)
- PHP 關(guān)于訪問控制的和運(yùn)算符優(yōu)先級(jí)介紹
- 關(guān)于PHP語言構(gòu)造器介紹
- php/js獲取客戶端mac地址的實(shí)現(xiàn)代碼
- php5.5新數(shù)組函數(shù)array_column使用
- PHP preg_match的匹配多國語言的技巧
- php 中序列化和json使用介紹
- php采集文章中的圖片獲取替換到本地
- 相關(guān)鏈接:
- 教程說明:
PHP教程-PHP中數(shù)組元素升序、降序及重新排序的函數(shù)。