我知道这是一个主观问题,但多年来困扰着我。
让我们直接跳到一个简单的示例:
class MyClass {
private $username;
function __constructor( $username ) {
$this->username = $username;
}
function register() {
if( $this->_has_duplicate( $this->username ) ) { // #1
return false;
}
...
}
private function _has_duplicate( $username ) {
...
}
}
在#1中,我将类变量传递给_has_duplicate()
。但是该函数还可以访问相同的类变量...
我应该不传递任何内容并在_has_duplicate()
内调用变量吗?
下面的代码是否遵循更好的做法?
...
function register() {
// pass nothing
if( $this->_has_duplicate() ) {
return false;
}
...
}
private function _has_duplicate() {
// when needed I call $this->username
...
}
谢谢!