解析PHP可变函数的经典用法
程序员文章站
2023-04-07 19:25:52
复制代码 代码如下:
<?php
function map($fun, $list,$params=array()){
$acc=null;
$last=array_push($params, null,$acc)-1;
foreach($list as $params[$last-1]){ //第一次见这种写法感觉很神奇
$params[$last]=call_user_func_array($fun , $params );
}
$acc=array_pop($params);
return $acc;
}
function add($element,$acc){
if ($acc == null);
return $acc=$element+$acc;
}
$result=0;
$result=addto($result,1);
$result=addto($result,2);
$result=addto($result,3);
echo "result = $result\n";
$result=0;
$result=map('addto',array(1,2,3));
echo "result= $result\n";
?>
这样以后累加 类似的计算就方便多了。。。
复制代码 代码如下:
<?php
function map($fun, $list,$params=array()){
$acc=null;
$last=array_push($params, null,$acc)-1;
foreach($list as $params[$last-1]){ //第一次见这种写法感觉很神奇
$params[$last]=call_user_func_array($fun , $params );
}
$acc=array_pop($params);
return $acc;
}
function add($element,$acc){
if ($acc == null);
return $acc=$element+$acc;
}
$result=0;
$result=addto($result,1);
$result=addto($result,2);
$result=addto($result,3);
echo "result = $result\n";
$result=0;
$result=map('addto',array(1,2,3));
echo "result= $result\n";
?>
这样以后累加 类似的计算就方便多了。。。
上一篇: 资深程序员的新技术之旅 seo优化之路
下一篇: 基于empty函数的输出详解