array_filter — 用回調(diào)函數(shù)過(guò)濾數(shù)組中的單元
array array_filter ( array $input [, callback $callback] );
依次將 array 數(shù)組中的每個(gè)值傳遞到 callback 函數(shù)。如果 callback 函數(shù)返回 true,則 array 數(shù)組的當(dāng)前值會(huì)被包含在返回的結(jié)果數(shù)組中。數(shù)組的鍵名保留不變。
遍歷 input 數(shù)組中的每個(gè)值,將它們傳遞給 callback 函數(shù)。
| 序號(hào) | 參數(shù)及說(shuō)明 |
|---|---|
| 1 | input 要遍歷的數(shù)組 |
| 2 | callback 這個(gè)回調(diào)函數(shù)使用 |
它返回過(guò)濾后的數(shù)組。
<?php
function odd($var) {
return($var & 1);
}
function even($var) {
return(!($var & 1));
}
$input1 = array("a"=>1, "b"=>2, "c"=>3, "d"=>4, "e"=>5);
$input2 = array(6, 7, 8, 9, 10, 11, 12);
echo "奇數(shù)值:\n";
print_r(array_filter($input1, "odd"));
echo "偶數(shù)值:\n";
print_r(array_filter($input2, "even"));
?>測(cè)試看看 ?/?輸出結(jié)果:
奇數(shù)值: Array ( [a] => 1 [c] => 3 [e] => 5 ) 偶數(shù)值: Array ( [0] => 6 [2] => 8 [4] => 10 [6] => 12 )