属性v方法变量

时间:2011-09-03 12:51:46

标签: php

新的PHP OOA并有两个相关的问题:

class foo {
    private $string = null;
    private $some_trivial_flag = false;

    1)public function help_doing_some_stuff() {

    2)*public function help_doing_some_stuff($some_trivial_flag)* {

         if(!$this->some_trivial_flag(..) ...
    }

public function do_some_stuff() {
    1)  $this->help_doing_trivial_stuff(); 
    2)  *$this->help_doing_trivial_stuff$($this->some_trivial_flag);*    
    }
}

class foo {
   private $string = null;

   public function help_doing_some_stuff($some_trivial_flag) {
      if(!$this->some_trivial_flag(..) ...
   }

  public function do_some_stuff() {
     $some_trivial_flag = false;
     $this->help_doing_trivial_stuff($some_trivial_flag);
  }

最好将类中使用的每个变量声明为属性,或者在类方法中声明一些声明。 此外,如果您已将其声明为属性,则仍应列入 方法参数列表?

1 个答案:

答案 0 :(得分:0)

将成员函数调用之间需要保留状态的变量声明为成员变量。

就是这样。

选择接受哪些变量作为函数的参数是完全不相关的。