2013-02-12 54 views
0

OOP的新功能。 是否有任何解决方法在静态方法中使用扩展类实例。 假设我有一个完整的数据库类。在静态中使用扩展类方法

class Mysql{ 

    public function getrecords(){ 

     } 

} 

Class login extends Mysql{ 

    public static method(){ 

     $this->getrecords() 

          } 

} 

现在使用类似:

login::method(); 

虽然上面写的代码是无效的,但我怎么能实现这个功能?

+0

试试这个:http://stackoverflow.com/a/2286720/921154 – qrazi 2013-02-12 08:59:01

+1

不要将静态方法与实例方法相结合 - 你试图实现什么? – 2013-02-12 09:00:42

+1

静态方法的使用非常有限,仅将它们用于特定目的。参见[如何不使用静态技术来杀死你的测试性](http://kunststube.net/static/)。 – deceze 2013-02-12 09:01:50

回答

0

您可以使用下面的代码来实现这一功能

类的Mysql {

public function getrecords(){ 
     echo "test"; 
    } 

}

类登录扩展的Mysql {

public static function method(){ 
     parent::getrecords(); 
} 

} 登录::方法();

+0

不,它不是这样的 – 2013-02-12 12:59:15

+1

所以你可以详细说明你想要的功能吗? – 2013-02-19 10:35:15