Why does the code below:
class A {
public function foo() {}
}
class B extends A {
private function foo() {}
}
generates an fatal error while this:
class A {
private function foo() {}
}
class B extends A {
public function foo() {}
}
doesn't although the documentation says "If the child doesn't see the parent's private methods, the child can't override them"?