扩展如何在类中工作?

时间:2016-04-12 00:58:39

标签: php pdo

我一直在尝试构建一个PDO扩展,我希望在不同的文件中有特殊的类,但是我希望它们都链接到同一个原始类。

我使用了一些Frameworks,我发现他们使用git log --follow ./path/to/file 关键字,我认为它将您正在制作的课程添加到您提供的extends class

我尝试过的一些代码是:

class

我尝试为原始PSM类创建一个对象:

class PSMQuery extends PSM {

   // Functions and Jargon

}

但是当我调用像$psm = new PSM(/*Information*/); 这样的$psm变量时,它会出现一个错误,说我在调用它时它是一个未定义的方法。

我是否错误地使用了$psm->functionInTheExtendedClass关键字?

2 个答案:

答案 0 :(得分:1)

  

我是否错误地使用了extends关键字?

你正确使用它,但它反过来。

如果PSMQuery延伸至PSM,则表示您可以PSM访问和使用PSMQuery中的内容,但不是相反。

我想要了解它你可以用一个很好的例子:

class twoRoomApartment extends building { }

所以现在你可以认为合乎逻辑并且已经看到,两室公寓可能从建筑物延伸而不是相反。

现在在您的代码中,您只需创建PSMQuery的实例。

答案 1 :(得分:0)

它的继承。

家长:PSM 孩子:PSMQuery

使用扩展时,您将扩展父类功能并创建子类。

您的子类将继承所有父类功能。

父级不会获得子类功能。

因此,当你试图创建父类的对象时,它并不知道子类的功能。

您需要创建子类的对象,然后您可以从父类访问方法。