相关疑难解决方法(0)

你能在PHP数组中存储一个函数吗?

例如:

$functions = array(
  'function1' => function($echo) { echo $echo; }
);
Run Code Online (Sandbox Code Playgroud)

这可能吗?什么是最好的选择?

php arrays function

62
推荐指数
3
解决办法
5万
查看次数

作为数组值

我似乎无法找到任何此类内容,并且想知道是否可以将函数或函数引用存储为数组元素的值.例如

array("someFunc" => &x(), "anotherFunc" => $this->anotherFunc())
Run Code Online (Sandbox Code Playgroud)

谢谢!

php arrays function-pointers function

13
推荐指数
4
解决办法
3万
查看次数

一组函数的替代?

我正在编写一个应用程序(php),它需要很长的类似但不同的函数列表,这些函数由一组键调用:

$functions = [
    "do this" => function() {
        // does this
    },
    "do that" => function() {
        // does that
    }
] 
etc.
Run Code Online (Sandbox Code Playgroud)

我选择了将类似的功能在一个数组,因为它们不是类似不够 -让一个大的功能,这是完全有条件的语句相同的结果是不是要去工作.而且我也需要能够仅通过键来调用它们,例如:

$program = ["do this", "do that", "do this"];
foreach ($program as $k => $v) {
    $functions[$v]();
}
Run Code Online (Sandbox Code Playgroud)

事实是这个函数 - 数组结构引起了很多问题,例如我很难从另一个数组函数中调用一个数组函数,例如这不起作用:

"do that" => function() {
    $functions["do this"]();
}
Run Code Online (Sandbox Code Playgroud)

也不是这样

"do that" => function() {
    global $functions;
    $functions["do this"]();
}
Run Code Online (Sandbox Code Playgroud)

或这个:

"do that" => function($functions) { …
Run Code Online (Sandbox Code Playgroud)

php arrays functional-programming function

12
推荐指数
3
解决办法
609
查看次数

将函数存储在数组中

我可以这样做吗?

$arrayFn[1] = function fnName(){
    echo "test";
}
$arrayFn[1];
Run Code Online (Sandbox Code Playgroud)

php arrays function

4
推荐指数
1
解决办法
423
查看次数