What is the good example of using 'func_get_arg' in PHP?

后端 未结 7 1171
梦谈多话
梦谈多话 2021-02-07 00:39

I just have found out that there is a function called func_get_arg in PHP which enables developer to use variant style of getting arguments. It seems to be very us

7条回答
  •  不知归路
    2021-02-07 01:05

    Let's say we have multiple arrays containing data in which we need to search across the keys for their values without merging these arrays.

    The arrays are like:

    $a = array('a' => 5, 'b' => 6);
    $b = array('a' => 2, 'b' => 8);
    $c = array('a' => 7, 'b' => 3);
    

    In that case, say we need to get all the values of the key a from all the arrays. We can write a function that take in arbitrary number of arrays to search in.

    // we need the key, and at least 1 array to search in
    function simpleSearchArrays($key, $a1){
        $arrays = func_get_args();
        array_shift($arrays); // remove the first argument, which is the key
        $ret = array();
        foreach($arrays as $a){
            if(array_key_exists($key, $a)){
                $ret[] = $a[$key];
            }
        }
        return $ret;
    }
    

    So if we use the function:

     $x = simpleSearchArrays('a', $a, $b, $c);
    

    $x will then contain array(5, 2, 7).

提交回复
热议问题