国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

php數組排序usort、uksort與sort函數用法

2024-05-04 23:27:28
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了php數組排序usort、uksort與sort函數用法,詳細介紹了usort、uksort與sort函數在數組排序中的應用,具有不錯的參考借鑒價值,需要的朋友可以參考下
 
 

本文實例講述了php數組排序usort、uksort與sort函數用法。分享給大家供大家參考。具體用法分析如下:

對數組排序:usort() 函數使用用戶自定義的函數對數組排序,實例代碼如下:

復制代碼代碼如下:
function cmp($a, $b)        //用戶自定義回調函數 

  if($a==$b)         //如果兩個參數相等 
  { 
    return 0;         //返回0 
  } 
  return($a>$b)?-1:1;       //如果第1個參數大于第2個返回1,否則-1 

$a=array(3,2,5,6,1);        //定義一個數組 
usort ($a,"cmp");        //使用自定義函數對數組排序 
foreach($a as $key=>$value)      //循環輸出排序后的鍵值對 

  echo "$key:$valuen"; 
}

注釋:如果兩個元素比較結果相同,則它們在排序后的數組中的順序未經定義,到 php 4.0.6 之前,用戶自定義函數將保留這些元素的原有順序,但是由于在 4.1.0 中引進了新的排序算法,結果將不是這樣了,因為對此沒有一個有效的解決方案.

 

對數組鍵名排序 uksort(array,sorttype),實例代碼如下:

復制代碼代碼如下:
function cmp($a, $b)        //用戶自定義回調函數 

  if($a==$b)         //如果兩個參數相等 
  { 
    return 0;         //返回0 
  } 
  return($a>$b)?-1:1;       //如果第1個參數大于第2個返回1,否則-1 

$a=array(4=>"four",3 =>"three",20 =>"twenty",10=>"ten"); //定義一個數組 
uksort ($a,"cmp");        //使用自定義函數對數組鍵名排序 
foreach($a as $key=>$value)      //循環輸出排序后的鍵值對 
{
  echo "$key:$valuen"; 
}

uksort() 函數使用用戶自定義的比較函數按照鍵名對數組排序,并保持索引關系,如果成功則返回 true,否則返回 false.

 

如果要排序的數組需要用一種不尋常的標準進行排序,那么應該使用此函數,自定義函數應接受兩個參數,該參數將被數組中的一對鍵名填充,比較函數在第一個參數小于,等于,或大于第二個參數時必須分別返回一個小于零,等于零,或大于零的整數.

sort() 函數按升序對給定數組的值排序.

注釋:本函數為數組中的單元賦予新的鍵名,原有的鍵名將被刪除,如果成功則返回 true,否則返回 false,實例代碼如下:

復制代碼代碼如下:
$fruits=array("lemon","orange","banana","apple");    //定義一個數組 
sort($fruits);           //對數組進行排序 
foreach($fruits as $key=>$val)        //循環輸出數組排序后的鍵值對 

  echo "$key=$valn";         //輸出鍵值對 
}

 

希望本文所述對大家的PHP程序設計有所幫助。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 隆安县| 靖远县| 扎兰屯市| 四平市| 邯郸市| 卢龙县| 建平县| 丘北县| 额尔古纳市| 江川县| 都兰县| 交城县| 连山| 汝城县| 鄂州市| 溧阳市| 肥乡县| 石门县| 林西县| 曲阜市| 临江市| 平顶山市| 安平县| 禹城市| 江津市| 武乡县| 闵行区| 年辖:市辖区| 景德镇市| 博野县| 静乐县| 武陟县| 牟定县| 井研县| 海口市| 木兰县| 陇南市| 吉安市| 新宾| 开化县| 临湘市|