dongwa3808 2019-04-29 21:54
浏览 157
已采纳

是否可以将函数存储在数组中并根据if语句结果调用它们?

I'm new using PHP, and I'm trying to store functions in an array to call them later using an if statement.

I've tried but, functions are called before if statement, so this is an example of what I need:

    function a()  {
        return 'a';
    }

    function b()  {
        return 'b';
    }

    $array = [a(), b()];

    if($condition === 'a') {
        $array[0];
    }

What I want to achieve is to use a specific function depending on if validation.

  • 写回答

3条回答 默认 最新

  • dongyang9813 2019-04-29 22:02
    关注

    Just store the function name as a string and call call_user_func.

    function a()  {
        return 'a';
    }
    
    function b()  {
        return 'b';
    }
    
    $array = ['a', 'b'];
    
    if($condition === 'a') {
        call_user_func($array[0]);
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?