我有一个包含多个方法的类。所以我想知道哪种方法更好?
通过方法传递:
class cls {
function method1($var){
echo $var;
}
function method2($var){
echo $var;
}
}
$obj = new cls;
$obj->methodX($var); // X can be 1,2
按班级传递:
class cls {
public $var;
function __construct($var){
$this->var = $var;
}
function method1(){
echo $this->var;
}
function method2(){
echo $this->var;
}
}
$obj = new cls($var);
$obj->methodX(); // X can be 1,2
注意:我需要$var
所有方法。实际上还有近10种方法。
答案 0 :(得分:0)
从设计的角度来说,我会去上课。它允许您只传递一次参数。它还会删除您要在其中调用方法的每个方法/函数中对参数的依赖性。
两者之间的性能比较是可以忽略的(reference)。