dpsu84620 2015-05-10 14:19
浏览 33
已采纳

PHP数组运行函数并将变量传递给它

I am coding a bot for a game and I am now coding the handlers I want to call my array so it runs the function.

$handlers = array(
    "x" => function()
);

function function($m)
{
    echo "Var: " . $m . "
";
}

When I call handlers I tried it like this:

$handlers("x");

So how can I pass the variable to the function.

  • 写回答

2条回答 默认 最新

  • dongpu3898 2015-05-10 14:32
    关注

    What you need is the call_user_func function. Besides, in your $handlers array, the name of the function must be in quotation marks and you can not use the reserved keyword function as the name of the function! and you may access the array element using [] operator:

    $handlers = array(
        "x" => '_function'
    );
    
    function _function($m)
    {
        echo "Var: " . $m . "
    ";
    }
    
    call_user_func($handlers['x'], "hello :)");
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?