PHP 数组遍历函数

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 "原数组:<br/>"; print_r($arr);
11     echo "array_map 返回的新数组:<br/>"; print_r($newArr);
12     
13     //array_walk返回布尔值,原数组改变
14     $b = array_walk($arr, function(&$v, $k){    //如果想回调函数能直接改变数组的值,那么回调函数地址参数应为引用。
15         $v+=$k;
16     });
17     echo "原数组:<br/>"; 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 "原数组:<br/>"; print_r($arr);
25     echo "array_filter返回的新数组:<br/>"; 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
)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值