请教:访问父类中变量时的疑问

#1 istony

spModel中定义了公用变量: public $verifier,
class spModel {
/**
  * 供检验值的规则与返回信息
  */
public $verifier = null;


然后在spModel的子类中访问变量$verifier:
class user extends spModel // 这是一个继承了spModel的数据类  
{  
     public $pk = 'uid';  
    public $table = 'user';  
    // 定义验证规则  
     var $verifier = array(  
         "rules" => array( // 规则  

如上,对父类变量$verifier 的访问不需要使用“$this->”来访问吗?请问这是为什么?谢谢解答!

2011-03-31 22:42:34

#2 jake


class user extends spModel // 这是一个继承了spModel的数据类  
{  
     public $pk = 'uid';  
    public $table = 'user';  
    // 定义验证规则  
     var $verifier = array(  
这种时候,$verifier是叫“定义”变量,所以不需要加$this->,这时候还不是“访问”父类的变量,而是“覆盖”定义。

class user extends spModel {
function test(){
return $this->verifier;
}
}
这种情况,在成员函数里面“使用”这个变量,那么就叫做“访问”此变量。所以要加上$this->

2011-04-01 07:11:06

#3 istony

嗯嗯,现在明白了,感谢jake:victory:

2011-04-01 21:07:46

#4 phpha

回复 3 istony


    呵呵,在研究框架之前还是先好好学下OOP吧……

2011-04-02 09:30:26