<?php
class Foo {
private function FooFunction(){
}
}
class Bar extends Foo {
public function BarFunction(){
$this->FooFunction();
}
}
$foo = new Foo();
$foo->FooFunction(); //Fatal error: Call to private method Foo::FooFunction()
//(Fair enough)
$bar = new Bar();
$bar->BarFunction(); //Fatal error: Call to private method Foo::FooFunction()
//from context 'Bar'
我很难理解如何在类中正确声明函数,然后可以在该类的扩展中使用
当我实例化Foo时,我希望FooFunction保持私密性。 但是,我确实需要能够从Bar内部调用它。
答案 0 :(得分:2)
更改代码如下:
<?php
class Foo {
protected function FooFunction(){
}
}
class Bar extends Foo {
public function BarFunction(){
$this->FooFunction();
}
}
在子类中无法访问的 private
个方法。protected
方法类型。