PHP array_reduce()函數(shù)的應(yīng)用解析
實(shí)例
向用戶自定義函數(shù)發(fā)送數(shù)組中的值,并返回一個(gè)字符串:
<?php
function myfunction($v1,$v2)
{
return $v1 . "-" . $v2;
}
$a=array("Dog","Cat","Horse");
print_r(array_reduce($a,"myfunction"));
?>
定義和用法
array_reduce() 函數(shù)向用戶自定義函數(shù)發(fā)送數(shù)組中的值,并返回一個(gè)字符串。
注釋:如果數(shù)組是空的且未傳遞 initial 參數(shù),該函數(shù)返回 NULL。
說(shuō)明
array_reduce() 函數(shù)用回調(diào)函數(shù)迭代地將數(shù)組簡(jiǎn)化為單一的值。
如果指定第三個(gè)參數(shù),則該參數(shù)將被當(dāng)成是數(shù)組中的第一個(gè)值來(lái)處理,或者如果數(shù)組為空的話就作為最終返回值。
下面給大家介紹下PHP array_reduce()的應(yīng)用,具體內(nèi)容如下所述:
array_reduce($array,$callback($carry,$item),$initial)用回調(diào)函數(shù)迭代計(jì)算數(shù)組元素,并返回最終結(jié)果。$carry攜帶上次迭代的值,如果是本次迭代的第一次,那么這個(gè)值是$initial。如果指定了$initial的值,該參數(shù)在處理開(kāi)始前使用,或者處理結(jié)束后,被處理的數(shù)組為空時(shí),返回此值。
<?php
function func1($x,$y){
$y += $x;
return $y;
}
$arr1 = array(1,2,3,4,5,6);
$return1 = array_reduce($arr1,"func1");
echo $return1;
結(jié)果: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;
輸出過(guò)程:
== 1
0 == 2
0 == 3
0 == 4
最終結(jié)果:0
$return2 = array_reduce($arr2,"func2",1); echo $return2;
輸出過(guò)程:
1 == 1
1 == 2
2 == 3
6 == 4
最終結(jié)果:24
$return3 = array_reduce(array(),"func1",'no data'); echo $return3;
輸出:'no data'
總結(jié)
以上所述是小編給大家介紹的PHP array_reduce()函數(shù)的應(yīng)用解析,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!
相關(guān)文章
微信公眾號(hào)實(shí)現(xiàn)掃碼獲取微信用戶信息(網(wǎng)頁(yè)授權(quán))
剛開(kāi)始接觸微信的時(shí)候一頭霧水,領(lǐng)導(dǎo)想要一個(gè)掃碼獲取微信用戶信息的功能,接下來(lái)通過(guò)本文給大家分享微信公眾號(hào)實(shí)現(xiàn)掃碼獲取微信用戶信息(網(wǎng)頁(yè)授權(quán)),需要的朋友可以參考下2019-04-04
深入php函數(shù)file_get_contents超時(shí)處理的方法詳解
本篇文章是對(duì)php函數(shù)file_get_contents超時(shí)處理的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06
Linux下手動(dòng)編譯安裝PHP擴(kuò)展的例子分享
這篇文章主要介紹了Linux下手動(dòng)編譯安裝PHP擴(kuò)展的例子分享,本文以PDO_MYSQL為例,講解手動(dòng)編譯安裝PHP擴(kuò)展的方法,需要的朋友可以參考下2014-07-07
php的memcache類分享(memcache隊(duì)列)
這篇文章主要介紹了php的memcache類的使用方法(memcache隊(duì)列),需要的朋友可以參考下2014-03-03

