Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在对象方法中返回值还是在对象方法中设置值?PHP_Php_Oop_Methods_Return - Fatal编程技术网

在对象方法中返回值还是在对象方法中设置值?PHP

在对象方法中返回值还是在对象方法中设置值?PHP,php,oop,methods,return,Php,Oop,Methods,Return,我可以用两种不同的方式编写完成相同任务的类 class Simple { private $var; public function __construct() { $this->var = $this->setVar(); } private function setVar() { return true; } } 或 什么时候我会用一个而不是另一个?我见过许多不同的php应用程序使用这两种不同的类

我可以用两种不同的方式编写完成相同任务的类

class Simple {

    private $var;

    public function __construct() {

        $this->var = $this->setVar();
    }

    private function setVar() {

        return true;
    }
}


什么时候我会用一个而不是另一个?我见过许多不同的php应用程序使用这两种不同的类型。但是似乎没有一般的指导方针可以遵循,或者这对事实有影响吗?

二传手应该设定,而不是返回。这不需要更多解释。

设置程序应该设置,而不是返回。这应该不需要更多的解释。

在我看来,这两个属性设置器都不正确。属性设置器应获取一个参数,并将参数值指定给该属性:

class Simple {
    private $var;
    public function setVar($val) {
        $this->var = $val;
    }

    public function getVar() {
        return $this->var;
    }
}

在我看来,这两个都不是正确的属性设置器。属性设置器应获取一个参数,并将参数值指定给该属性:

class Simple {
    private $var;
    public function setVar($val) {
        $this->var = $val;
    }

    public function getVar() {
        return $this->var;
    }
}