array_reduce()
用自定義的回調(diào)函數(shù)迭代計(jì)算數(shù)組的鍵值,返回簡(jiǎn)化后的單一結(jié)果;
適合用來(lái)做數(shù)學(xué)運(yùn)算;
返回最后一次函數(shù)計(jì)算后返回的結(jié)果;
不會(huì)修改原來(lái)的數(shù)組;
基礎(chǔ)語(yǔ)法:
array_reduce(array $array ,callback $callback [,mixed $inital = NULL])
array $array 被用來(lái)計(jì)算的數(shù)組;
callback $callback 自定義回調(diào)函數(shù);
mixed $initial 回調(diào)函數(shù)的第一計(jì)算的第一個(gè)參數(shù),默認(rèn)==NULL;
語(yǔ)法結(jié)構(gòu)1:
array_reduce(array $array ,callback $callback)
實(shí)例:
$a_int = range(1,10);
function add ($a,$b){
return $a += $b;
}
array_reduce ($a_int ,'add'); #result : 55;
語(yǔ)法結(jié)構(gòu)2:
array_reduce(array $array ,callback $callback ,miexd $initial);
$a_int = range (1,10);
function add($a,$b){
return $a += $b;
}
array_reduce($a_int ,'add',100); #result : 155;
備注:
array_reduce()中的,第三個(gè)參數(shù),只會(huì)參與計(jì)算一次;
array_walk() ,array_walk_recursive() 中的第三個(gè)參會(huì),在每次自定義函數(shù)的調(diào)用中都會(huì)被傳遞進(jìn)去;