What are the benefits of using func_num_args and func_get_args in PHP when handling multiple parameters?

When handling functions with multiple parameters in PHP, using func_num_args and func_get_args can provide flexibility and scalability. func_num_args allows you to determine the number of parameters passed to a function dynamically, while func_get_args retrieves all parameters passed to the function as an array. This can be particularly useful when you have a variable number of arguments or want to handle them in a generic way.

function sum() {
    $args = func_get_args();
    $total = 0;
    
    foreach ($args as $arg) {
        $total += $arg;
    }
    
    return $total;
}

echo sum(1, 2, 3, 4); // Output: 10