nested_method_and_function.phpt 766 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. --TEST--
  2. active_class_entry must be always correct (__METHOD__ should not depend on declaring function ce)
  3. --FILE--
  4. <?php
  5. namespace Baz;
  6. class Foo {
  7. public static function bar() {
  8. function foo() {
  9. var_dump(__FUNCTION__);
  10. var_dump(__METHOD__);
  11. var_dump(__CLASS__);
  12. }
  13. foo();
  14. var_dump(__FUNCTION__);
  15. var_dump(__METHOD__);
  16. var_dump(__CLASS__);
  17. return function() {var_dump(__FUNCTION__); var_dump(__METHOD__); var_dump(__CLASS__); };
  18. }
  19. }
  20. $c = Foo::bar();
  21. $c();
  22. ?>
  23. --EXPECT--
  24. string(7) "Baz\foo"
  25. string(7) "Baz\foo"
  26. string(0) ""
  27. string(3) "bar"
  28. string(12) "Baz\Foo::bar"
  29. string(7) "Baz\Foo"
  30. string(13) "Baz\{closure}"
  31. string(13) "Baz\{closure}"
  32. string(7) "Baz\Foo"