ns_026.phpt 731 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. --TEST--
  2. 026: Name ambiguity (class name & namespace name)
  3. --INI--
  4. opcache.optimization_level=0
  5. --FILE--
  6. <?php
  7. namespace Foo;
  8. class Foo {
  9. function __construct() {
  10. echo "Method - ".__CLASS__."::".__FUNCTION__."\n";
  11. }
  12. static function Bar() {
  13. echo "Method - ".__CLASS__."::".__FUNCTION__."\n";
  14. }
  15. }
  16. function Bar() {
  17. echo "Func - ".__FUNCTION__."\n";
  18. }
  19. $x = new Foo;
  20. \Foo\Bar();
  21. $x = new \Foo\Foo;
  22. \Foo\Foo::Bar();
  23. \Foo\Bar();
  24. Foo\Bar();
  25. --EXPECTF--
  26. Method - Foo\Foo::__construct
  27. Func - Foo\Bar
  28. Method - Foo\Foo::__construct
  29. Method - Foo\Foo::Bar
  30. Func - Foo\Bar
  31. Fatal error: Uncaught Error: Call to undefined function Foo\Foo\Bar() in %sns_026.php:%d
  32. Stack trace:
  33. #0 {main}
  34. thrown in %sns_026.php on line %d