PHP从其他类调用来自child的父方法

时间:2013-11-07 10:57:17

标签: php

我的项目中有3个类(连接,父类和子类)。

class Upload {

   public function UploadFile(){
        /* some code */     
   } 
}

class Photos extends Upload {

  public function getUrl(){
      /* some code */           
  } 

  public function UploadPhoto(){

     $this->getUrl();   

     $this->UploadFile();       
  } 
}

现在,我想创建一个可以使用其他类方法的类。

Class Example {

private $db;
private $ph;

     public function __construct( Mysqliconn $db, Photo $ph) {

        $this->db = $db;    
        $this->ph = $ph;   
     } 

     public function callUploadPhoto() {

        $this->ph->UploadPhoto();
     }
}

以这种方式实例化

$db = new Mysqliconn();
$ph = new Photos($db);
$ex = new Example($db, $ph);

我的问题是我可以调用其他类的方法,但不能调用引用父类的方法。 如果我调用 $ ex-> callUploadPhoto()调用照片类的 getUrl()方法,但不调用父上传方法上传() 。 我怎么能这样做?感谢

3 个答案:

答案 0 :(得分:0)

尝试使用新的 php 5.4.0 future traits

可以很轻松地解决您的问题...

答案 1 :(得分:0)

你到底犯了什么错误?

和UploadPhoto功能行2中的$ name变量是什么,即$ this->上传($ name)?

答案 2 :(得分:0)

您的Example类需要扩展Photos类。这解决了它。