PHP配列遍歴関数

1649 ワード

array_mapは新しい配列を返し、元の配列は変わらない(新しい配列と元の配列の配列長は同じであるべき).
array_walkが返すブール値、配列要素の値を変更する場合は、コールバック関数の最初のパラメータはarray_などの参照でなければなりません.walk($array, function(&$v, $k){});  , arrary_walkのコールバック関数は配列のkeyを受信することもできる.
array_filterは新しい配列を返し、元の配列は変わりません.配列内の要素をフィルタする役割を果たします.コールバック関数は真を返します.要素は新しい配列に保存されます.すなわち、新しい配列と元の配列の配列の長さが異なる場合があります.
 function testArrayCallBack(){
 4     $arr = array(12,64,3,47);
 5     
 6     //array_map      ,     
 7     $newArr = array_map(function($v){
 8         return ++$v;
 9     },$arr);
10     echo "   :
"; print_r($arr); 11 echo "array_map :
"; print_r($newArr); 12 13 //array_walk , 14 $b = array_walk($arr, function(&$v, $k){ // , 。 15 $v+=$k; 16 }); 17 echo " :
"; print_r($arr); 18 echo "array_walk :"; var_dump($b ); 19 20 //array_filter , 21 $newArr = array_filter($arr, function($v){ 22 return $v > 10; 23 }); 24 echo " :
"; print_r($arr); 25 echo "array_filter :
"; print_r($newArr); 26 }
   :
Array
(
    [0] => 12
    [1] => 64
    [2] => 3
    [3] => 47
)
array_map       :
Array
(
    [0] => 13
    [1] => 65
    [2] => 4
    [3] => 48
)
   :
Array
(
    [0] => 12
    [1] => 65
    [2] => 5
    [3] => 50
)
array_walk       :bool(true)
   :
Array
(
    [0] => 12
    [1] => 65
    [2] => 5
    [3] => 50
)
array_filter      :
Array
(
    [0] => 12
    [1] => 65
    [3] => 50
)