Kri*_*rph 2 php variables function
在PHP中,是否有可能将变量传递给这样的函数:
function myfunction($var1="bar", $var2="foo"){
echo $var1 . $var2;
}
myfunction($var2="bar");
Run Code Online (Sandbox Code Playgroud)
并获得以下输出:barbar?
关心Kristoffer
不,PHP不支持命名参数.
另一种方法是传递一个关联的参数数组,并对一组默认值进行比较/合并.Clunky,但在一些库和框架中工作并且是一种非常常见的模式:
function myfunction($args = array()) {
$defaults = array('var1' => 'bar', 'var2' => 'foo');
extract(array_merge($defaults, $args));
echo $var1 . $var2;
}
myfunction(array('var2' => 'bar'));
Run Code Online (Sandbox Code Playgroud)