PHP array_reduce()函數的應用解析

實例

向用戶自定義函數發送數組中的值,並返回一個字符串:

<?php
function myfunction($v1,$v2)
{
return $v1 . "-" . $v2;
}
$a=array("Dog","Cat","Horse");
print_r(array_reduce($a,"myfunction"));
?>

 定義和用法

array_reduce() 函數向用戶自定義函數發送數組中的值,並返回一個字符串。

註釋:如果數組是空的且未傳遞 initial 參數,該函數返回 NULL。

說明

array_reduce() 函數用回調函數迭代地將數組簡化爲單一的值。

如果指定第三個參數,則該參數將被當成是數組中的第一個值來處理,或者如果數組爲空的話就作爲最終返回值。

下面給大家介紹下PHP array_reduce()的應用,具體內容如下所述:


array_reduce($array,$callback($carry,$item),$initial)

用回調函數迭代計算數組元素,並返回最終結果。$carry攜帶上次迭代的值,如果是本次迭代的第一次,那麼這個值是$initial。如果指定了$initial的值,該參數在處理開始前使用,或者處理結束後,被處理的數組爲空時,返回此值。


<?php
function func1($x,$y){
$y += $x;
return $y;
}
$arr1 = array(1,2,3,4,5,6);
$return1 = array_reduce($arr1,"func1");
echo $return1;

結果:21

function func2($x,$y){
echo $x.' == '.$y."<br>";
$y *= $x;
return $y;
}
$arr2 = array(1,2,3,4);
$return2 = array_reduce($arr2,"func2");
echo $return2;

輸出過程:

== 1
0 == 2
0 == 3
0 == 4

最終結果:0

$return2 = array_reduce($arr2,"func2",1);
echo $return2;

輸出過程:

1 == 1
1 == 2
2 == 3
6 == 4

最終結果:24

$return3 = array_reduce(array(),"func1",'no data');
echo $return3;

輸出:'no data'


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章