如何學習PHP usort()

定義和用法

usort() 函數使用用戶自定義的函數對數組排序。

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

注釋:本函數為 array 中的元素賦予新的鍵名。這會刪除原有的鍵名。

語法

usort(array,sorttype)

參數

描述

array必需。規定要排序的數組。

function

必需。用戶自定義的函數。

函數必須設計為返回 -1, 0, 或 1,並應該接受兩個供比較的參數,同時以類似下面這樣的方式來工作:

如果 a = b, 返回 0

如果 a > b, 返回 1

如果 a < b, 返回 -1

例子

<?php function my_sort($a, $b)  {  if ($a == $b) return 0;  return ($a > $b) ? -1 : 1;  } $arr = array("Peter", "glenn","Cleveland","peter","cleveland", "Glenn"); usort($arr, "my_sort"); print_r ($arr); ?>

輸出:

Array ( [0] => peter [1] => glenn [2] => cleveland [3] => Peter [4] => Glenn [5] => Cleveland )

相關文章

  1. 孩子學習偏科的原因及解決方案

    由於學生有不同的學習經歷和基礎,也由於他們具有不同的特長和興趣,因而學生中普遍存在著偏科的現象.孩子一旦出現偏科現象後,家長們會感到十分擔心,但除了反覆讓孩子在弱科上下功夫外,好象已別無它法似的. 弱 ...
  2. 點媽陪你學教育部《3-6歲兒童學習與發展指南》(二)

    <指南>的"說明"部分解讀[紫色字體為點媽解讀部分,表格也是原創] 說  明 一. 為深入貫徹<國家中長期教育改革和發展規劃綱要(2010-2020年)>和 ...
  3. 如何深入學習龍心戰紀輔助掛機的專業運用呢?

    龍心戰紀是一款3D動作類角色扮演手遊,是架空世界的恢弘巨製.空想史上的又一力作.那麼,如何深入學習龍心戰紀輔助掛機的專業運用呢?下面就具體談談! 工具/原料 輔助掛機.電腦 方法/步驟 第一步:打開模 ...
  4. 百度教育度學堂怎麼學習

    百度教育是專業的在線教育平台,度學堂是其產品線之一,給廣大網友們提供網上視頻進行學習.那麼,該怎麼在度學堂看視頻學習呢? 工具/原料 電腦 網絡 方法/步驟 首先,在百度教育首頁點擊"度學堂 ...
  5. 如何成為一名安卓開發者?安卓學習流程?

    安卓是一個可以和蘋果相媲美的手機系統.蘋果都是高端用戶(放棄了窮小子),而安卓以廣大的普通用戶為基礎的情況下,大力發展高端機(其中以三星的4s為例,價格在2k多).從用戶的角度,安卓用戶大於蘋果用戶. ...
  6. 工作學習的同時要注意預防金追兵

    現如今,由於生活和工作壓力的增大,頸椎病常出現於年輕人身上,其實這都由於人們沒做好頸椎病的預防,才會讓此病輕易出現在生活中.所以我們要知道些頸椎病的預防知識,才能更好的工作.下面就來介紹頸椎病的預防有 ...
  7. 從製作天體爆炸中了解PS的學習要點(上)

    看了PS中天體爆炸的製作,發現製作這個可以學習到PS中許多知識.濾鏡的使用.圖層的選擇.圖像中的功能等. 小編將自己的理解寫在製作步驟之後,方便和小編一樣的新手更好的掌握PS. 工具/原料 photo ...
  8. 散戶學習必須賣的十種情況

    一.當行情變得熱絡,每個人都覺得股票還會再漲,建議趕快賣掉它,否則為時已晚了."當每個投資人都很樂觀,開始鼓吹親朋好友買股票時,其實這些人只能嘴上煽動他人,自己卻無法再將行情向上推升,這時最 ...
  9. 中學生為什麼不愛學習?

    現在我們常常會發現,中學生雖然物質條件富足,不愁吃喝,但是他們中的大多數卻並不愛學習.這又是為什麼呢? 方法/步驟 原因一:中學生現在面臨的學習壓力比較重.各科老師都叫同學們背這樣背那樣.背上的內容呢 ...
  10. ps學習入門經驗

    psp主要處理以像素所構成的數字圖像.是我們生活中常用的軟體,當我們看到ps大神熟練運用是不是我們蠢蠢欲動.自己也想試試,ps有很多功能,在圖像.圖形.文字.視頻.出版等各方面都有涉及.那麼接下來就學 ...
  11. 高中學習計劃(文科)

    我不知道你們想要的是怎樣的學習計劃,是一大段文字還是一個系統計劃,我提供的是我在高中學習的時間表和每日計劃表,希望對你們有幫助. 前提 首先這個時間都是針對我們學校的時間安排所制定的 時間表 早上我們 ...
  12. C語言技巧學習c++經驗50條3

    這原本是一個很老的帖子了,我今天之所以翻出來,是因為感覺很多尚未怎麼入門的人,可能真的很需要這些忠告.當然如果你是真 正的高手,你大可不看下面的這些文字.但是句我所只,似乎在編程這 條路上是沒有止境的 ...
  13. 日本留學的學習生活不得不注意的事

    學習篇 我們去日本的初衷和目的是什麼,這一點很重要,千萬千萬別在日本生活過程中.享受日本文化過程中忘掉! 日語學習中問題有很多種,大概分為以下幾類-- 一,考試機器類:就是讀書,考試每次100分,但是 ...
  14. 星辰變-如何學習門派技能

    星辰變-第一次學習門派技能 步驟/方法 玩家在加入門派之後,會自動學習到兩個門派技能.可以把它們拖動到快捷欄中,戰鬥時可以快速的施放.此外,玩家還可以在各自門派的傳功師NPC處(門派大長老旁邊)購買技 ...
  15. 新手如何快速學習園林商務資料管理(3)

    在園林景觀施工中,商務資料的準備尤為重要,很多單位都面臨著甲方不能及時回結算款,除了有甲方的原因外更多是單位自己的商務結算做得不到位,導致審核變慢. 在行業里,資料員這個角色通常都是由剛畢業的大學生或 ...
  16. 圍棋開源軟體DarkForestGo學習

    學習DarkForestGO的同時,用CPP調用源程序寫了一個DEMO.原來程序是用Lua+C的. darkforestGo地址: https://github.com/facebookresearc ...
  17. 學習自考本科的方法,快速取得本科證

    自考是多數人多考慮過提升學歷的途徑之一,但是出於自考的難度,很多人都望而卻步,為什麼身邊總有那麼幾個學霸,逢考必過,而且還能保證分數.可能你總覺得人家的運氣比你好,如果你要是有他的運氣,你也..... ...
  18. 如何學習歷史

    並不是靠死記硬背就能解決問題的.歷史更需要的還是理解.複習時關鍵是要反覆地看書,在反覆中提高.書才是最根本的.離開書本談能力是不現實的. 方法/步驟 並不是靠死記硬背就能解決問題的.歷史更需要的還是理 ...
  19. 本人學習游泳的步驟

    學習游泳 方法/步驟 先游泳第一步要先學在水中漂浮,也就是憋氣.初學者要準備好泳衣外,還有準備耳塞,眼鏡,鼻夾. 能漂浮了之後就可以學習腿的動作,腿的動作學會了學習手的動作,兩者配合. 最後一項是換氣 ...
  20. 初一英語學習要記好筆記

    好的課堂筆記能幫你理解.掌握本課的知識體系和脈絡,更好地消化課堂所學知識.記課堂筆記的好處很多,還有助於聽課時注意力的高度集中,大腦快速進行思維,做到耳到.眼到.口到.心到.卓越教育老師為大家整理了相 ...