標籤:php array 數組
php中很少使用的函數,瞭解一下還是好的。
主要功能都是比較數組,返回數組交集。
array_uintersect(array1, array2, string);
作用:
自訂函數比較倆個或者多個數組,只比較value
參數:
array1: 被比較的數組1
array2: 比較的數組2
string:自訂函數名
傳回值:
返回數組的交集
例子:比較3個數組
$a1 = array(‘a‘ => ‘red‘, ‘b‘ => ‘blue‘, ‘c‘ => ‘yellow‘); $a2 = array(‘c‘ => ‘blue‘, ‘a‘ => ‘red‘); $a3 = array(‘b‘ => ‘blue‘); function myFunction($a, $b) { if($a === $b) { return 0; } return $a > $b? 1 : -1; } $res = array_uintersect($a1, $a2, $a3, ‘myFunction‘); print_r($res); 輸出結果: Array ( [b] => blue )
array_uintersect_assoc(array1, array2, string);
作用:
使用自訂函數比較倆個或者多個數組, 比較key和value
參數:
array1: 被比較的數組
array2: 比較的數組
string:函數名
傳回值:
返回數組中的交集(key與value都要相同)
例子:比較3個數組
$a1 = array(‘a‘ => ‘red‘, ‘b‘ => ‘blue‘, ‘c‘ => ‘yellow‘); $a2 = array(‘c‘ => ‘blue‘, ‘a‘ => ‘red‘); $a3 = array(‘a‘ => ‘red‘); function myFunction($a, $b) { if($a === $b) { return 0; } return $a > $b? 1 : -1; } //$res = array_uintersect($a1, $a2, $a3, ‘myFunction‘); $res = array_uintersect_assoc($a1, $a2, $a3,‘myFunction‘); print_r($res); 輸出結果: Array ( [a] => red )
array_uintersect_uassoc(array1, array2, string1, string2);
作用:
自訂key和value的比較函數比較key和value
參數:
array1: 被比較的數組1
array2: 比較的數組
string1: 自訂比較key的函數名
string2: 自訂比較value的函數名
傳回值:
比較後數組的交集
例子:比較3個數組
$a1 = array(‘a‘ => ‘red‘, ‘b‘ => ‘blue‘, ‘c‘ => ‘yellow‘); $a2 = array(‘c‘ => ‘blue‘, ‘a‘ => ‘red‘); $a3 = array(‘a‘ => ‘red‘); function myKey($a, $b) { if($a === $b) { return 0; } return $a > $b? 1 : -1; } function myValue($a, $b) { if($a === $b) { return 0; } return $a > $b? 1 : -1; } $res = array_uintersect_uassoc($a1, $a2, $a3, ‘myKey‘, ‘myValue‘); print_r($res); 輸出結果: Array ( [a] => red )
本文出自 “蝸牛慢慢爬” 部落格,請務必保留此出處http://10130617.blog.51cto.com/10120617/1894896
php 學習筆記--數組篇(9)