在另一个类中使用一个类变量

时间:2014-09-11 19:22:23

标签: php class oop

如何在加载到基类的另一个类中访问基类变量?

基类示例

class base {

   public $get;

   public function __get( $name ) {
      require_once $name . '.php';
      $this->name = new $name( $this );
      return $this->name;
   }

   public function __construct( $varfromphplib ) {
     $this->varfromphplib = $varfromphplib;
     $this->get = explode( "/", $_SERVER['REQUEST_URI'] );
   }
}

$class = new base( $varfromphplib );

另一个类示例(使用__get加载到基类中)

class another {
   public function showGet() {
      //there I wanna return base class $this->get;
   }

   public function getLibClass(){
      //there I wanna return $varfromphplib variable with baseclass prefix or not if can
   }
}
//usage in base class
$this->another->showGet( );

我不知道如何在“另一个”类中访问基类变量,例如$ get 希望有人能够帮助我。

1 个答案:

答案 0 :(得分:-1)

如果一个类继承自另一个类(A扩展B),则可以使用$ this->变量从父类调用变量。请注意,这仅在继承类没有自己的构造函数且没有相同名称的变量时才有效。

如果其中任何一个阻止你使用$ this,你总是可以像调用不相关类中的任何公共变量一样调用父类变量。 即:A有保护变量$ a,B有A扩展A,但有一个名为$ b的变量。 $objA = new A(); echo "A->a = ".$objA->a;