数组函数学习四
1.array_reduce 用回调函数迭代地将数组简化为单一的值
function sum($res,$val){
$res+=$val;
return $res;
}
function product($res,$val){
$res*=$val;
return $res;
}
$arr1=array(1,2,3,4,5);
$arr2=array();
$arr3=array_reduce($arr1,'sum');
$arr4=array_reduce($arr1,'product',10); //1*2*3*4*5*10
$arr5=array_reduce($arr2,'sum','no data to reduce');
var_dump($arr3);
var_dump($arr4);
var_dump($arr5);
2. array_replace_recursive 使用传递的数组递归替换第一个数组的元素
$arr1=array(
'a'=>array('33'),
'b'=>array(
'aa'=>44,
'bb'=>55,
));
$arr2=array(
'a'=>array('66'),
'b'=>array(
'aa'=>88,
));
$arr3=array_replace_recursive($arr1,$arr2);
var_dump($arr3);
3.array_replace 适应传递的数组替换第一个数组的元素
$arr1=array('a','b','c','d');
$arr2=array(
'0'=>44,
'4'=>88);
$arr3=array(0=>array(13));
$arr4=array_replace($arr1,$arr2,$arr3);
var_dump($arr4);
4. array_reverse 返回单元顺序相反的数组
$arr1=array('cc',4.0,array('he','123'));
$arr2=array_reverse($arr1);
$arr3=array_reverse($arr1,true);//保留原有的键
print_r($arr1);
print_r($arr2);
print_r($arr3);
5. array_search 在数组中搜索给定的值,如果成功则返回首个相应的键名
$array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red');
$key = array_search('green', $array); // $key = 2;
$key = array_search('red', $array); // $key = 1;
6.each 返回数组中当前的键/值对并将数组指针向前移动一步
$foo = array("Robert" => "Bob", "Seppo" => "Sepi");
$bar = each($foo);
print_r($bar);
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: