⑴ 如何學習php array
PHP 5 Array 函數
函數
描述
array() 創建數組。
array_change_key_case() 把數組中所有鍵更改為小寫或大寫。
array_chunk() 把一個數組分割為新的數組塊。
array_column() 返回輸入數組中某個單一列的值。
array_combine() 通過合並兩個數組來創建一個新數組。
array_count_values() 用於統計數組中所有值出現的次數。
array_diff() 比較數組,返回差集(只比較鍵值)。
array_diff_assoc() 比較數組,返回差集(比較鍵名和鍵值)。
array_diff_key() 比較數組,返回差集(只比較鍵名)。
array_diff_uassoc() 比較數組,返回差集(比較鍵名和鍵值,使用用戶自定義的鍵名比較函數)。
array_diff_ukey() 比較數組,返回差集(只比較鍵名,使用用戶自定義的鍵名比較函數)。
array_fill() 用給定的鍵值填充數組。
array_fill_keys() 用指定鍵名的給定鍵值填充數組。
array_filter() 用回調函數過濾數組中的元素。
array_flip() 交換數組中的鍵和值。
array_intersect() 比較數組,返回交集(只比較鍵值)。
array_intersect_assoc() 比較數組,返回交集(比較鍵名和鍵值)。
array_intersect_key() 比較數組,返回交集(只比較鍵名)。
array_intersect_uassoc() 比較數組,返回交集(比較鍵名和鍵值,使用用戶自定義的鍵名比較函數)。
array_intersect_ukey() 比較數組,返回交集(只比較鍵名,使用用戶自定義的鍵名比較函數)。
array_key_exists() 檢查指定的鍵名是否存在於數組中。
array_keys() 返回數組中所有的鍵名。
array_map() 把數組中的每個值發送到用戶自定義函數,返回新的值。
array_merge() 把一個或多個數組合並為一個數組。
array_merge_recursive() 遞歸地合並一個或多個數組。
array_multisort() 對多個數組或多維數組進行排序。
array_pad() 用值將數組填補到指定長度。
array_pop() 刪除數組的最後一個元素(出棧)。
array_proct() 計算數組中所有值的乘積。
array_push() 將一個或多個元素插入數組的末尾(入棧)。
array_rand() 返回數組中一個或多個隨機的鍵。
array_rece() 通過使用用戶自定義函數,以字元串返回數組。
array_replace() 使用後面數組的值替換第一個數組的值。
array_replace_recursive() 遞歸地使用後面數組的值替換第一個數組的值。
array_reverse() 以相反的順序返回數組。
array_search() 搜索數組中給定的值並返回鍵名。
array_shift() 刪除數組中首個元素,並返回被刪除元素的值。
array_slice() 返回數組中被選定的部分。
array_splice() 刪除並替換數組中指定的元素。
array_sum() 返回數組中值的和。
array_udiff() 比較數組,返回差集(只比較值,使用一個用戶自定義的鍵名比較函數)。
array_udiff_assoc() 比較數組,返回差集(比較鍵和值,使用內建函數比較鍵名,使用用戶自定義函數比較鍵值)。
array_udiff_uassoc() 比較數組,返回差集(比較鍵和值,使用兩個用戶自定義的鍵名比較函數)。
array_uintersect() 比較數組,返回交集(只比較值,使用一個用戶自定義的鍵名比較函數)。
array_uintersect_assoc() 比較數組,返回交集(比較鍵和值,使用內建函數比較鍵名,使用用戶自定義函數比較鍵值)。
array_uintersect_uassoc() 比較數組,返回交集(比較鍵和值,使用兩個用戶自定義的鍵名比較函數)。
array_unique() 刪除數組中的重復值。
array_unshift() 在數組開頭插入一個或多個元素。
array_values() 返回數組中所有的值。
array_walk() 對數組中的每個成員應用用戶函數。
array_walk_recursive() 對數組中的每個成員遞歸地應用用戶函數。
arsort() 對關聯數組按照鍵值進行降序排序。
asort() 對關聯數組按照鍵值進行升序排序。
compact() 創建包含變數名和它們的值的數組。
count() 返回數組中元素的數目。
current() 返回數組中的當前元素。
each() 返回數組中當前的鍵/值對。
end() 將數組的內部指針指向最後一個元素。
extract() 從數組中將變數導入到當前的符號表。
in_array() 檢查數組中是否存在指定的值。
key() 從關聯數組中取得鍵名。
krsort() 對數組按照鍵名逆向排序。
ksort() 對數組按照鍵名排序。
list() 把數組中的值賦給一些變數。
natcasesort() 用「自然排序」演算法對數組進行不區分大小寫字母的排序。
natsort() 用「自然排序」演算法對數組排序。
next() 將數組中的內部指針向前移動一位。
pos() current() 的別名。
prev() 將數組的內部指針倒回一位。
range() 創建包含指定范圍單元的數組。
reset() 將數組的內部指針指向第一個元素。
rsort() 對數組逆向排序。
shuffle() 將數組打亂。
sizeof() count() 的別名。
sort() 對數組排序。
uasort() 使用用戶自定義的比較函數對數組中的鍵值進行排序。
uksort() 使用用戶自定義的比較函數對數組中的鍵名進行排序。
usort() 使用用戶自定義的比較函數對數組進行排序。
⑵ php array怎麼使用
PHP Array 簡介
array 函數允許您對數組進行操作。
PHP 支持單維和多維的數組。同時提供了用資料庫查詢結果來構造數組的函數。
安裝
array 函數是 PHP 核心的組成部分。無需安裝即可使用這些函數。
PHP Array 函數
PHP:指示支持該函數的最早的 PHP 版本。
函數
描述
PHP
array() 創建數組。 3
array_change_key_case() 返回其鍵均為大寫或小寫的數組。 4
array_chunk() 把一個數組分割為新的數組塊。 4
array_combine() 通過合並兩個數組來創建一個新數組。 5
array_count_values() 用於統計數組中所有值出現的次數。 4
array_diff() 返回兩個數組的差集數組。 4
array_diff_assoc() 比較鍵名和鍵值,並返回兩個數組的差集數組。 4
array_diff_key() 比較鍵名,並返回兩個數組的差集數組。 5
array_diff_uassoc() 通過用戶提供的回調函數做索引檢查來計算數組的差集。 5
array_diff_ukey() 用回調函數對鍵名比較計算數組的差集。 5
array_fill() 用給定的值填充數組。 4
array_filter() 用回調函數過濾數組中的元素。 4
array_flip() 交換數組中的鍵和值。 4
array_intersect() 計算數組的交集。 4
array_intersect_assoc() 比較鍵名和鍵值,並返回兩個數組的交集數組。 4
array_intersect_key() 使用鍵名比較計算數組的交集。 5
array_intersect_uassoc() 帶索引檢查計算數組的交集,用回調函數比較索引。 5
array_intersect_ukey() 用回調函數比較鍵名來計算數組的交集。 5
array_key_exists() 檢查給定的鍵名或索引是否存在於數組中。 4
array_keys() 返回數組中所有的鍵名。 4
array_map() 將回調函數作用到給定數組的單元上。 4
array_merge() 把一個或多個數組合並為一個數組。 4
array_merge_recursive() 遞歸地合並一個或多個數組。 4
array_multisort() 對多個數組或多維數組進行排序。 4
array_pad() 用值將數組填補到指定長度。 4
array_pop() 將數組最後一個單元彈出(出棧)。 4
array_proct() 計算數組中所有值的乘積。 5
array_push() 將一個或多個單元(元素)壓入數組的末尾(入棧)。 4
array_rand() 從數組中隨機選出一個或多個元素,並返回。 4
array_rece() 用回調函數迭代地將數組簡化為單一的值。 4
array_reverse() 將原數組中的元素順序翻轉,創建新的數組並返回。 4
array_search() 在數組中搜索給定的值,如果成功則返回相應的鍵名。 4
array_shift() 刪除數組中的第一個元素,並返回被刪除元素的值。 4
array_slice() 在數組中根據條件取出一段值,並返回。 4
array_splice() 把數組中的一部分去掉並用其它值取代。 4
array_sum() 計算數組中所有值的和。 4
array_udiff() 用回調函數比較數據來計算數組的差集。 5
array_udiff_assoc() 帶索引檢查計算數組的差集,用回調函數比較數據。 5
array_udiff_uassoc() 帶索引檢查計算數組的差集,用回調函數比較數據和索引。 5
array_uintersect() 計算數組的交集,用回調函數比較數據。 5
array_uintersect_assoc() 帶索引檢查計算數組的交集,用回調函數比較數據。 5
array_uintersect_uassoc() 帶索引檢查計算數組的交集,用回調函數比較數據和索引。 5
array_unique() 刪除數組中重復的值。 4
array_unshift() 在數組開頭插入一個或多個元素。 4
array_values() 返回數組中所有的值。 4
array_walk() 對數組中的每個成員應用用戶函數。 3
array_walk_recursive() 對數組中的每個成員遞歸地應用用戶函數。 5
arsort() 對數組進行逆向排序並保持索引關系。 3
asort() 對數組進行排序並保持索引關系。 3
compact() 建立一個數組,包括變數名和它們的值。 4
count() 計算數組中的元素數目或對象中的屬性個數。 3
current() 返回數組中的當前元素。 3
each() 返回數組中當前的鍵/值對並將數組指針向前移動一步。 3
end() 將數組的內部指針指向最後一個元素。 3
extract() 從數組中將變數導入到當前的符號表。 3
in_array() 檢查數組中是否存在指定的值。 4
key() 從關聯數組中取得鍵名。 3
krsort() 對數組按照鍵名逆向排序。 3
ksort() 對數組按照鍵名排序。 3
list() 把數組中的值賦給一些變數。 3
natcasesort() 用「自然排序」演算法對數組進行不區分大小寫字母的排序。 4
natsort() 用「自然排序」演算法對數組排序。 4
next() 將數組中的內部指針向前移動一位。 3
pos() current() 的別名。 3
prev() 將數組的內部指針倒回一位。 3
range() 建立一個包含指定范圍的元素的數組。 3
reset() 將數組的內部指針指向第一個元素。 3
rsort() 對數組逆向排序。 3
shuffle() 把數組中的元素按隨機順序重新排列。 3
sizeof() count() 的別名。 3
sort() 對數組排序。 3
uasort() 使用用戶自定義的比較函數對數組中的值進行排序並保持索引關聯。 3
uksort() 使用用戶自定義的比較函數對數組中的鍵名進行排序。 3
usort() 使用用戶自定義的比較函數對數組中的值進行排序。 3
⑶ 如何運用PHP函數array
PHP Array函數是PHP 核心的組成部分。無需安裝即可使用這些函數。
array()
創建數組。
array_change_key_case()
返回其鍵均為大寫或小寫的數組。
array_chunk()
把一個數組分割為新的數組塊。
array_column()
返回輸入數組中某個單一列的值。
array_combine()
通過合並兩個數組(一個為鍵名數組,一個為鍵值數組)來創建一個新數組。
array_count_values()
用於統計數組中所有值出現的次數。
array_diff()
比較數組,返回兩個數組的差集(只比較鍵值)。
array_diff_assoc()
比較數組,返回兩個數組的差集(比較鍵名和鍵值)。
array_diff_key()
比較數組,返回兩個數組的差集(只比較鍵名)。
array_diff_uassoc()
比較數組,返回兩個數組的差集(比較鍵名和鍵值,使用用戶自定義的鍵名比較函數)。
array_diff_ukey()
比較數組,返回兩個數組的差集(只比較鍵名,使用用戶自定義的鍵名比較函數)。
array_fill()
用給定的鍵值填充數組。
array_fill_keys()
用給定的指定鍵名的鍵值填充數組。
array_filter()
用回調函數過濾數組中的元素。
array_flip()
反轉/交換數組中的鍵名和對應關聯的鍵值。
array_intersect()
比較數組,返回兩個數組的交集(只比較鍵值)。
array_intersect_assoc()
比較數組,返回兩個數組的交集(比較鍵名和鍵值)。
array_intersect_key()
比較數組,返回兩個數組的交集(只比較鍵名)。
array_intersect_uassoc()
比較數組,返回兩個數組的交集(比較鍵名和鍵值,使用用戶自定義的鍵名比較函數)。
array_intersect_ukey()
比較數組,返回兩個數組的交集(只比較鍵名,使用用戶自定義的鍵名比較函數)。
array_key_exists()
檢查指定的鍵名是否存在於數組中。
array_keys()
返回數組中所有的鍵名。
array_map()
將用戶自定義函數作用到給定數組的每個值上,返回新的值。
array_merge()
把一個或多個數組合並為一個數組。
array_merge_recursive()
遞歸地把一個或多個數組合並為一個數組。
array_multisort()
對多個數組或多維數組進行排序。
array_pad()
將指定數量的帶有指定值的元素插入到數組中。
array_pop()
刪除數組中的最後一個元素(出棧)。
array_proct()
計算數組中所有值的乘積。
array_push()
將一個或多個元素插入數組的末尾(入棧)。
array_rand()
從數組中隨機選出一個或多個元素,返回鍵名。
array_rece()
通過使用用戶自定義函數,迭代地將數組簡化為一個字元串,並返回。
array_replace()
將所有被替換數組中的元素替換成第一個數組。
array_replace_recursive()
將所有被替換數組中的元素遞歸地替換成第一個數組。
array_reverse()
將原數組中的元素順序翻轉,創建新的數組並返回。
array_search()
在數組中搜索給定的值,如果成功則返回相應的鍵名。
array_shift()
刪除數組中的第一個元素,並返回被刪除元素的值。
array_slice()
返回數組中的選定部分。
array_splice()
把數組中的指定元素去掉並用其它值取代。
array_sum()
返回數組中所有值的和。
array_udiff()
比較數組,返回兩個數組的差集(只比較鍵值,使用一個用戶自定義的鍵名比較函數)。
array_udiff_assoc()
比較數組,返回兩個數組的差集(比較鍵名和鍵值,使用內建函數比較鍵名,使用用戶自定義函數比較鍵值)。
array_udiff_uassoc()
比較數組,返回兩個數組的差集(比較鍵名和鍵值,使用兩個用戶自定義的鍵名比較函數)。
array_uintersect()
比較數組,返回兩個數組的交集(只比較鍵值,使用一個用戶自定義的鍵名比較函數)。
array_uintersect_assoc()
比較數組,返回兩個數組的交集(比較鍵名和鍵值,使用內建函數比較鍵名,使用用戶自定義函數比較鍵值)。
array_uintersect_uassoc()
比較數組,返回兩個數組的交集(比較鍵名和鍵值,使用兩個用戶自定義的鍵名比較函數)。
array_unique()
刪除數組中重復的值。
array_unshift()
在數組開頭插入一個或多個元素。
array_values()
返回數組中所有的值。
array_walk()
對數組中的每個成員應用用戶函數。
array_walk_recursive()
對數組中的每個成員遞歸地應用用戶函數。
arsort()
對關聯數組按照鍵值進行降序排序。
asort()
對關聯數組按照鍵值進行升序排序。
compact()
創建一個包含變數名和它們的值的數組。
count()
返回數組中元素的數目。
current()
返回數組中的當前元素。
each()
返回數組中當前的鍵/值對。
end()
將數組的內部指針指向最後一個元素。
extract()
從數組中將變數導入到當前的符號表。
in_array()
檢查數組中是否存在指定的值。
key()
從關聯數組中取得鍵名。
krsort()
對關聯數組按照鍵名降序排序。
ksort()
對關聯數組按照鍵名升序排序。
list()
把數組中的值賦給一些數組變數。
natcasesort()
用"自然排序"演算法對數組進行不區分大小寫字母的排序。
natsort()
用"自然排序"演算法對數組排序。
next()
將數組中的內部指針向前移動一位。
pos()
current() 的別名。
prev()
將數組的內部指針倒回一位。
range()
創建一個包含指定范圍的元素的數組。
reset()
將數組的內部指針指向第一個元素。
rsort()
對數值數組進行降序排序。
shuffle()
把數組中的元素按隨機順序重新排列。
sizeof()
count() 的別名。
sort()
對數值數組進行升序排序。
uasort()
使用用戶自定義的比較函數對數組中的鍵值進行排序。
uksort()
使用用戶自定義的比較函數對數組中的鍵名進行排序。
usort()
使用用戶自定義的比較函數對數組進行排序。
Array(arglist)
作用: 創建數組並給數組賦值
arglist 參數是賦給包含在 Variant 中的數組元素的值的列表(用逗號分隔)。如果沒有指定此參數,則將會創建零長度的數組。
例:一般創建數組的方法為
Dim AA(2)
AA(0)=10
AA(1)=20
AA(2)=30
MsgBox AA(2)
如果像以上的話比較繁瑣那麼如果用array函數呢?
Dim AA
AA=Array(10,20,30)
B=AA(2)
MsgBox B
這樣的話過程就比較簡單用的時候拿出來就行了。
static Object get(Object array, int index)
返回指定數組對象中索引組件的值。
static boolean getBoolean(Object array, int index)
以 boolean 形式返回指定數組對象中索引組件的值。
static byte getByte(Object array, int index)
以 byte 形式返回指定數組對象中索引組件的值。
static char getChar(Object array, int index)
以 char 形式返回指定數組對象中索引組件的值。
static double getDouble(Object array, int index)
以 double 形式返回指定數組對象中索引組件的值。
static float getFloat(Object array, int index)
以 float 形式返回指定數組對象中索引組件的值。
static int getInt(Object array, int index)
以 int 形式返回指定數組對象中索引組件的值。
static int getLength(Object array)
以 int 形式返回指定數組對象的長度。
static long getLong(Object array, int index)
以 long 形式返回指定數組對象中索引組件的值。
static short getShort(Object array, int index)
以 short 形式返回指定數組對象中索引組件的值。
static Object newInstance(Class<?> componentType, int length)
創建一個具有指定的組件類型和長度的新數組。
static Object newInstance(Class<?> componentType, int[] dimensions)
創建一個具有指定的組件類型和維度的新數組。
static void set(Object array, int index, Object value)
將指定數組對象中索引組件的值設置為指定的新值。
static void setBoolean(Object array, int index, boolean z)
將指定數組對象中索引組件的值設置為指定的 boolean 值。
static void setByte(Object array, int index, byte b)
Array 對象用於在單個的變數中存儲多個值。
參數
參數size是期望的數組元素個數。返回的數組,length 欄位將被設為size的值。
參數element...,elementn是參數列表。當使用這些參數來調用構造函數 Array() 時,新創建的數組的元素就會被初始化為這些值。它的 length 欄位也會被設置為參數的個數。
返回值
返回新創建並被初始化了的數組。
如果調用構造函數 Array() 時沒有使用參數,那麼返回的數組為空,length 欄位為 0。
當調用構造函數時只傳遞給它一個數字參數,該構造函數將返回具有指定個數、元素為 undefined 的數組。
當其他參數調用 Array() 時,該構造函數將用參數指定的值初始化數組。
當把構造函數作為函數調用,不使用 new 運算符時,它的行為與使用 new 運算符調用它時的行為完全一樣。
⑷ PHP關於回調函數的問題
原文
PHP Array 函數
定義和用法
array_udiff() 函數返回一個數組,該數組包括了所有在被比較數組中,但是不在任何其它參數數組中的值,鍵名保留不變。
array_udiff() 函數與 array_diff() 函數 的行為不同,後者用內部函數進行比較。
數據的比較是用 array_udiff() 函數的 function 進行的。function 函數帶有兩個將進行比較的參數。如果第一個參數小於第二個參數,則函數返回一個負數,如果兩個參數相等,則要返回 0,如果第一個參數大於第二個,則返回一個正數。
其實傳入的參數作用是指定對比規則,實際上就是用戶可以自己定義什麼是大於,等於,小於
例如,正常的用法
function($a,$b){
if($a > $b) return 1;
if($a < $b) return -1;
return 0;
}
但是,如果有特殊的需求,我們也可以聲明特別的規則,如
function ($a, $b) {
if($a + 1 > $b) return -1;
if ($a + 1 < $b) return 1;
if ($a + 1 == $b) return 0;
}
⑸ php裡面array_diff是什麼意思
計算數組的差集
⑹ php中的回調函數到底什麼意思,函數array_udiff的執行過程是什麼樣的,以下代碼是怎麼執行的
數據的比較是用 array_udiff() 函數的 function 進行的。function 函數帶有兩個將進行比較的參數。如果第一個參數小於第二個參數,則函數返回一個負數,如果兩個參數相等,則要返回 0,如果第一個參數大於第二個,則返回一個正數。
該函數只進行鍵值的比較,不比較鍵名。如 "a"=>1 和 "b"=>1 這兩個元素視作相等的。
array_udiff() 函數僅檢查多維數組中的一維。
⑺ php array_udiff_assoc 計算兩個數組的差集實例
php
array_udiff()
函數用於比較兩個(或更多個)數組的鍵名和鍵值,並返回差集。此比較是通過用戶提供的回調函數來進行的。如果認為第一個參數小於,等於,或大於第二個參數時必須分別返回一個小於零,等於零,或大於零的整數。本文章通過實例向大家講解array_udiff()函數的使用方法,
array_udiff_assoc
—
帶索引檢查計算數組的差集,用回調函數比較數據
基本語法:
array
array_udiff_assoc
(
array
$array1
,
array
$array2
[,
array
$
...
],
callable
$data_compare_func
)
此比較是通過用戶提供的回調函數來進行的。如果認為第一個參數小於,等於,或大於第二個參數時必須分別返回一個小於零,等於零,或大於零的整數。
Note:
注意本函數只檢查了多維數組中的一維。當然,可以用
array_udiff_assoc($array1[0],
$array2[0],
"some_comparison_func");
來檢查更深的維度。
參數介紹
參數
描述
array1
必需。第一個數組。
array2
必需。第二個數組。
myfunction
必需。字元串值,定義可調用的比較函數。
在第一個參數小於,等於或大於第二個參數時,該比較函數必須相應地返回一個小於,等於或大於
0
的整數。
返回值
array_udiff_assoc()
返回一個數組,該數組包括了所有在
array1
中但是不在任何其它參數數組中的值。注意和
array_diff()
與
array_udiff()
不同的是鍵名也用於比較。數組數據的比較是用用戶提供的回調函數進行的。在此方面和
array_diff_assoc()
的行為正好相反,後者是用內部函數進行比較的。
實例
<?php
class
cr
{
private
$priv_member;
function
cr($val)
{
$this->priv_member
=
$val;
}
static
function
comp_func_cr($a,
$b)
{
if
($a->priv_member
===
$b->priv_member)
return
0;
return
($a->priv_member
>
$b->priv_member)
?
1
:
-1;
}
}
$a
=
array(
"0.1"
=>
new
cr(9)
,
"0.5"
=>
new
cr(12)
,
0
=>
new
cr(23)
,
1
=>
new
cr(4)
,
2
=>
new
cr(-15)
,
);
$b
=
array(
"0.2"
=>
new
cr(9)
,
"0.5"
=>
new
cr(22)
,
0
=>
new
cr(3)
,
1
=>
new
cr(4)
,
2
=>
new
cr(-15)
,
);
$result
=
array_udiff_assoc($a,
$b,
array(
"cr",
"comp_func_cr"
));
print_r($result);
?>
運行結果:
Array
(
[0.1]
=>
cr
Object
(
[priv_member:private]
=>
9
)
[0.5]
=>
cr
Object
(
[priv_member:private]
=>
12
)
[0]
=>
cr
Object
(
[priv_member:private]
=>
23
)
)
上例中可以看到鍵值對
"1"
=>
new
cr(4)
同時出現在兩個數組中因此不在本函數的輸出中。
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
⑻ php 兩個二維數組比較,從第一個二維數組中,將第二個二維數組不同項挑選出來,最終合並成為一個新的數組
方法是使用array_udiff函數。代碼如下:
function diff_arr($a, $b){
return $a["id"] > $b["id"] ? 1 : ($a["id"] < $b["id"] ? -1 : 0);
}
print_r(array_udiff($arr0, $arr1, "diff_arr"));
⑼ php array_udiff函數中使用的自定義回調函數是固定的嗎
這里的自定義函數起到「比較大小」的作用。在一些純對象語言這個函數叫「比較器」
統一返回1,0,-1是為了底層能統一識別,
這里1代表前個參數代表的對象或數較大
比如我定義 蘋果比梨子大,蘋果和梨子在默認情況沒有比較的規則,無從比較。
在自定義函數 func($a,$b)中寫入我的自定比較規則,
當func(蘋果, 梨子)輸入時,就會返回1.就代表蘋果大於梨子。
0,代表相等
-1,代表小
如果數組是[蘋果, 梨子, 香蕉,桃子]這樣的「對象」數據,其中的蘋果和梨子之間的比較規則也就確認了
沒有自定義的情況,就只能依賴隱式轉換成的數值大小來比較,局限性非常大。
不能比較復雜的數組和對象。
舉幾個自定義函數應用場合。
1、非數值大小的場合
比如設奇數比0小,0又比偶數小。排出[7,5,3,1,0,2,4,6,8]這樣的排序,可用自定義函數
2、對象的比較
用戶A比用戶B大,根據綜合因素,性別生日注冊日期資歷等等。
蘋果比梨子大
3、復雜數組的比較。