Memory App
Programming
 




Variable Scope

PHP has three variable scopes: the global scope, function scope, and class scope. (1/3)

Variable-length Argument Lists

You can create a function that accepts a variable number of arguments, depending on the circumstance.

function sumOfInts(int ...$ints)
{
    return array_sum($ints);
}

echo sumOfInts(1, 2, 3); // 6
A typical example of this behaviour is exhibited by the printf() family of functions.

echo sprintf("%s %s is %d old", "John", "Smith", 10);

// Outputs: John Smith is 10 old
(2/3)

Argument lists count

PHP provides three built-in functions to handle variable-length argument lists: func_num_args(), func_get_arg(), func_get_args()

function myArray() 
{
    $arr = array(); $i = 0;

    if (func_num_args() == 0) {
        $arr[] = "Hello World";
    }

    if (func_num_args() > 0) {

        while($i < func_num_args()) {
            $arr[] = "Hello " . func_get_arg($i++);
        }
    }

    return $arr;
}

print_r(myArray()); // [Hello World]

print_r(myArray("John", "Mary")); // [Hello John, Hello Mary]
It is rather important to keep in mind that variable-length argument lists are full of potential pitfalls. While they are very powerful, they do tend to make your code confusing.

Questions



Top Reference > Programming