我们如何定义具有2或3个参数的动态函数。例如,如果我们有这样的函数:
function required($value, $fieldname){};
和另一个功能如:
function min($value, $fieldname, $min){};
并且它们都是动态的,所以我们不知道将调用哪一个,我们如何定义动态方法来处理这两种情况!我们可以使用if else:
if(isset($min))
{
return $functionName($value, $fieldname, $min);
} else {
return $functionName($value, $fieldname);
}
但PHP有另一种处理方法吗? (不使用条件)
答案 0 :(得分:0)
选项一是将可选参数设置为null:
function required( $value, $fieldname, $min = null ){};
如前所述,您可以稍微改变您的功能并传递数组
$array = array( 'value' => 'value', 'min' => 'min' );
function required( $array );
然后在你的功能中:
extract( $array );
if( isset( $value ) )
{
// Process
}
重复所有预期参数。