function updateParameters($landing)
{
$addValue = function ($final,$parametername,$value)
{
$value1=str_replace ( '{landing}' , $landing ,$value );
$_GET[$parametername]=$value1;
return "";
};
doSomethingWith20Params($addValue, "") ;
}
基本上,$addValue
是一个功能。参数号无法更改。这是因为doSomethingWith20Params ($addValue, "");
需要一个带有3个参数的函数。
在PHP中我得到了
5 446.6299 486504 doSomethingWith20Params( ???, ???, ??? ) ...\cutoolsgeneral.php:204
6 552.2776 487112 {closure:H:\business\shared\Dropbox\htdocs\tools2\cutoolsgeneral.php:197-202}( ???, ???, ??? ) ...\cutoolsgeneral.php:188
答案 0 :(得分:4)
只需使用use
关键字将vars绑定到您的闭包
function updateParameters($landing)
{
$addValue = function ($final,$parametername,$value) use ($landing)
{
$value1=str_replace ( '{landing}' , $landing ,$value );
$_GET[$parametername]=$value1;
return "";
};
doSomethingWith20Params($addValue, "") ;
}