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