简体   繁体   English

PHP - 在一个类中使用公共函数,但在扩展类中不使用

[英]PHP - using public function in one class but not in extended classes

I have 3 classes 我有3节课

class Header
{
    public function _after_save ()
    {
    }
}

class Line extends Header
{

}

class Details extends Line
{

}

Line extends header and Details extend line. 行扩展标题和详细信息扩展行。 Header has a function which 'll be called many pages in my site & I have made it public. 标题有一个功能,在我的网站中将被称为许多页面,我已公开。 I don't want when Line and Details class to call the function _after_save() to execute but it's getting executed as are extended classes. 我不希望Line和Details类调用函数_after_save()来执行,但是它和扩展类一样被执行。 I can't make the function protected for obvious reasons. 由于显而易见的原因,我无法保护功能。 Any help how I can achieve this 任何帮助我如何能够实现这一目标

You could create branched structure. 你可以创建分支结构。

class AbstractHeader
{

}

class Header extends AbstractHeader
{
    public function _after_save ()
    {
    }
}

class Line extends AbstractHeader
{

}

class Details extends AbstractHeader
{

}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM