lsb_016.phpt 587 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. --TEST--
  2. ZE2 Late Static Binding within hooks/magic methods
  3. --FILE--
  4. <?php
  5. class TestChild extends TestParent {
  6. public static function who() {
  7. echo __CLASS__."\n";
  8. }
  9. }
  10. class TestParent {
  11. public function __get($var) {
  12. static::who();
  13. }
  14. public function __set($var, $val) {
  15. static::who();
  16. }
  17. public function __call($name, $args) {
  18. static::who();
  19. }
  20. public static function who() {
  21. echo __CLASS__."\n";
  22. }
  23. }
  24. $o = new TestChild;
  25. $o->test();
  26. $o->a = "b";
  27. echo $o->a;
  28. ?>
  29. --EXPECT--
  30. TestChild
  31. TestChild
  32. TestChild