php方法中如何获取闭包的值?3
发布网友
发布时间:2023-10-16 15:46
我来回答
共4个回答
热心网友
时间:2024-12-01 09:24
亲,你好,很高兴为你解答该问题
首先,你的这个写法是有问题的哦!~
class A {
public function aa() {
// 函数体为空,所以外面不会有任何输出,即使设置变量来接受该方法,也不会有任何返回
// 所以你肯定拿不到123
}
}
$a = new A;
$a->aa(function () { // aa方法是不接受任何参数的,这个传了闭包进去
return 123;
});
要想拿到闭包中的123,你需要这样写才可以呦~~
class A {
public function aa($closure) { // aa方法接受一个闭包函数进来
return $closure(123); // 调用闭包函数,传入相应参数,并将闭包返回的值再次返回出去
}
}
$a = new A;
$b = $a->aa(function ($param) { // 给aa传入一个带一个参数的闭包
return $param; // 闭包方法返回传入的参数
});
var_mp($b);
希望可以帮到你,给我个采纳呦!~~
热心网友
时间:2024-12-01 09:25
配置应用程序的运行时规则、 数据库、 session等等。包含大量的用来更改框架的各个方面的配置文件。大部分的配置文件中返回的选项关联PHP数组。
热心网友
时间:2024-12-01 09:25
class A
{
public function aa($b)
{
echo $b();
}
}
$a = new A();
$a->aa(function(){
return 123;
});
热心网友
时间:2024-12-01 09:26
塞下曲·鹫翎金仆姑(卢纶)