紧急求助: php匿名函数的自调用问题?

<?php
function demo ($one, $two, $func) {
    echo $one + $two +$func($one, $two);
}

demo(10, 20, function($foo, $bar){
    return ($foo + $bar) * 2;
});
  1. 调用demo函数, 传入三个实参, 两个整数, 一个变量

    • function demo(10, 20, function($foo, $bar){})
  2. 进入demo内部进行运算

    • 将变量func赋值给匿名函数, 即$func = function($foo, $bar)
    • 得到 10+20+function(10, 20)
  3. 30+function($10, $20)中的function(10, 20).

    • 问题就在这里, 我知道这里会调用匿名函数, 将10, 20作为实传入到匿名函数function($foo, $bar)内部进行运算
    • 我的问题就在这里: 在回调函数中, 怎么调用匿名函数呢?
    • 比如说可以讲匿名函数赋值给变量, 有一个确定的规则去调用, 通过变量名调用匿名函数. 那么在回调函数中是怎么样的呢?
    • 再多问一下: php中匿名函数怎么自调用呢? 像javascript理你的自调用匿名函数那样
  4. 30+function(10, 20)
  5. 30+(10+20)*2
阅读 1.9k
1 个回答
$func = function() use($func){
    // 这里就能用到 $func 了
};
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题