private_redeclare.phpt 557 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. --TEST--
  2. ZE2 A derived class does not know anything about inherited private methods
  3. --FILE--
  4. <?php
  5. class base {
  6. private function show() {
  7. echo "base\n";
  8. }
  9. function test() {
  10. $this->show();
  11. }
  12. }
  13. $t = new base();
  14. $t->test();
  15. class derived extends base {
  16. function show() {
  17. echo "derived\n";
  18. }
  19. function test() {
  20. echo "test\n";
  21. $this->show();
  22. parent::test();
  23. parent::show();
  24. }
  25. }
  26. $t = new derived();
  27. $t->test();
  28. ?>
  29. --EXPECTF--
  30. base
  31. test
  32. derived
  33. base
  34. Fatal error: Call to private method base::show() from context 'derived' in %s on line %d