代码之家  ›  专栏  ›  技术社区  ›  Kirzilla

如何在B类方法中调用A类方法,并使B类方法和参数从A类方法中可用?

  •  0
  • Kirzilla  · 技术社区  · 14 年前

    类用户 {

      private $_var_1 = 10;
      private $_var_2 = 20;
    
      private function _preExecute() {
        //do something here before executing sub-class's method
      }
    
      private function _postExecute() {
        //do something here after executing sub-class's method
      }
    
      private function _anyMethod() {
        echo "Hello!";
      }
    
      public function execute($action) {
        $this->_preExecute();
        $obj = new __CLASS__."_".$action;
        $obj->execute();
        $this->_postExecute();
      }
    
    }
    
    class User_Add 
    {
    
      public function execute() {
        echo $this->_var1;
        echo $this->_var2;
        parent::_anyMethod();
      }
    
    }
    
    $user = new User();
    $user->execute("Add");
    

    所以,正如您所看到的,我希望能够从类用户添加中访问用户类的变量和方法,这在php 5.2或更高版本中是可能的吗?

    1 回复  |  直到 12 年前
        1
  •  0
  •   Leon    14 年前

    当然!

    class User_Add extends User
    

    但是用户类中的函数和变量必须是受保护的,或者是公共的,才能被用户添加类访问。看一看 inheritance 在PHP文档中。