繁体   English   中英

PHP 5中的php匿名函数

[英]php anonymous functions in php 5

我一直在使用这样的回调函数:

private function make_f($arg1, $arg2)
{
    $callback =
        function ($my_var) use ($arg1, $arg2)
        {
            return $my_var  * $arg1 * arg2;
        };
    return $callback;
}

由PHP 5.3.0 支持 ,但我的托管服务提供商具有PHP 5.2.6,因此它不起作用。 有什么办法可以解决这个问题吗?

这真的取决于$arg是什么。 对于$arg任何可能值,我只能想出像这样的东西:

public static $arguments = array();

private function make_f($arg)
{
    $variable_name = uniqid();

    ThisClass::$arguments[$variable_name] = $arg; // Replace ThisClass with the name of the actual class

    $callback = create_function('$my_var', 'return $my_var * ThisClass::$arguments[\'' . $variable_name . '\'];');

    return $callback;
}

这是一个演示。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM