自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何運(yùn)用PHP函數(shù)usort()實(shí)現(xiàn)自定義排序

開發(fā) 后端
PHP函數(shù)usort()的在PHP中是專門用來實(shí)現(xiàn)用戶的自定義排序的函數(shù)。我們可以通過創(chuàng)建自己的比較函數(shù)傳遞給這個(gè)函數(shù)。

PHP語言中進(jìn)行數(shù)組排序的方式有許多種,包括按照值排序,按照關(guān)鍵字排序,自然語言排序等等。今天我們要教給大家的是運(yùn)用PHP函數(shù)usort()來實(shí)現(xiàn)自定義的數(shù)組排序。你可以通過創(chuàng)建你自己的比較函數(shù),并把它傳遞給PHP函數(shù)usort(),如果***個(gè)參數(shù)比第二個(gè)參數(shù)“小”的話,比較函數(shù)必須返回一個(gè)比0小的數(shù),如果***參數(shù)比第二個(gè)參數(shù)“大”的話,比較函數(shù)應(yīng)該返回一個(gè)比0大的數(shù)。

#t#Listing I就是PHP函數(shù)usort()的一個(gè)例子,在這個(gè)例子中根據(jù)它們的長度對數(shù)組元素進(jìn)行排序,最短的項(xiàng)放在最前面:

  1. <?php 
  2. $data = array("joe@host.com", "john.doe@gh.co.uk",
     "asmithsonian@us.info", "jay@zoo.tw");usort($data, 'sortByLen');  
  3. print_r($data); function sortByLen($a, $b) {  
  4. if (strlen($a) == strlen($b)) {  
  5. return 0;  
  6. } else {  
  7. return (strlen($a) > strlen($b)) ? 1 : -1;  
  8. }  
  9. }  
  10. ?> 

這樣,就創(chuàng)建了我們自己的比較函數(shù),這個(gè)函數(shù)使用PHP函數(shù)usort()比較每一個(gè)字符串的個(gè)數(shù),然后分別返回1,0或-1.這個(gè)返回值是決定元素排列的基礎(chǔ)。下面是它的輸出結(jié)果:

Array ([0] => jay@zoo.tw

[1] => joe@host.com

[2] => john.doe@gh.co.uk

[3] => asmithsonian@us.info

)

希望大家能夠通過這段示例代碼學(xué)到PHP函數(shù)usort()的具體使用方式。

責(zé)任編輯:曹凱 來源: 百度博客
相關(guān)推薦

2009-12-10 10:18:05

PHP讀取文件

2009-11-24 17:45:47

PHP數(shù)組排序函數(shù)ar

2015-03-26 11:51:22

2009-11-24 10:31:22

PHP函數(shù)sort()

2009-09-07 22:00:15

LINQ自定義

2009-09-03 13:34:03

.NET自定義控件

2023-01-03 07:40:27

自定義滑塊組件

2014-12-30 11:51:35

ListViewItem View

2009-12-02 16:38:26

PHP發(fā)送郵件函數(shù)

2009-12-03 20:15:02

PHP rmdir()

2009-12-08 16:19:21

PHP函數(shù)pack

2009-12-04 09:41:25

PHP函數(shù)flush(

2009-11-18 15:39:43

PHP函數(shù)

2013-01-10 09:36:19

NagiosNagios插件

2009-12-07 13:50:10

PHP函數(shù)shuffl

2010-09-14 16:47:23

SQL自定義函數(shù)

2010-04-28 12:33:36

Oracle自定義函數(shù)

2010-09-14 16:59:39

SQL自定義函數(shù)

2009-12-10 15:33:02

PHP函數(shù)fgets

2009-12-04 18:05:05

PHP stristr
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號