PHP初始化函数参数中的变量


PHP initializing a variable in function parameters

我一直在看idiorm,这是在我正在工作的一个项目中使用的,我一直看到参数被赋予一个值。我对python中的这个比较熟悉,你可以为参数设置默认值,但不确定这里是否发生了这种情况。

的例子:

public static function for_table($table_name, $connection_name = self::DEFAULT_CONNECTION) {
            self::_setup_db($connection_name);
            return new self($table_name, array(), $connection_name);
        }

根据PHP关于函数参数的文档…

函数可以为标量参数定义如下c++风格的默认值:

function makecoffee($type = "cappuccino")
{
    return "Making a cup of $type.'n";
}
echo makecoffee();           // Making a cup of cappuccino.
echo makecoffee(null);       // Making a cup of .
echo makecoffee("espresso"); // Making a cup of espresso.

PHP还允许使用数组和特殊类型NULL作为默认值,[…]

默认值必须是常量表达式,而不是(例如)变量、类成员或函数调用。

注意,当使用默认参数时,任何默认值都应该在任何非默认参数的右侧;否则,事情将不会像预期的那样工作。