当我创建一个具有可选参数的函数时,我必须考虑哪个最有可能被传递,这决定了我在函数声明中指定它们的顺序。
使用位置不太好的 $mandatoryParam 执行以下函数:
public function myFunc($mightBeEmptyA, $mightBeEmptyB, $mandatoryParam)
{
}
这是更好的做法吗?做以下事情会更好吗?:
...
$this->myFunc(array('mightBeEmptyA' => 'myValue')) ;
...
public function myFunc($params)
{
if($params['mightBeEmptyA'])
{
// Do something....
}
}
改为使用数组传入参数。处理数组中的参数所需的额外逻辑是否值得?