實例php
向用戶自定義函數發送數組中的值,並返回一個字符串:數組
<?php function myfunction($v1,$v2) { return $v1 . "-" . $v2; } $a=array("Dog","Cat","Horse"); print_r(array_reduce($a,"myfunction")); ?>
定義和用法
ide
array_reduce() 函數向用戶自定義函數發送數組中的值,並返回一個字符串。函數
註釋:若是數組是空的且未傳遞 initial 參數,該函數返回 NULL。spa
說明
orm
array_reduce() 函數用回調函數迭代地將數組簡化爲單一的值。字符串
若是指定第三個參數,則該參數將被當成是數組中的第一個值來處理,或者若是數組爲空的話就做爲最終返回值。回調函數
下面給你們介紹下PHP array_reduce()的應用,具體內容以下所述:it
array_reduce($array,$callback($carry,$item),$initial)
用回調函數迭代計算數組元素,並返回最終結果。$carry攜帶上次迭代的值,若是是本次迭代的第一次,那麼這個值是$initial。若是指定了$initial的值,該參數在處理開始前使用,或者處理結束後,被處理的數組爲空時,返回此值。io
<?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'