ns_090.phpt 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. --TEST--
  2. Group use statements declared inline
  3. --FILE--
  4. <?php
  5. namespace Foo\Bar\Baz {
  6. function foo(){echo __FUNCTION__,"\n";}
  7. function bar(){echo __FUNCTION__,"\n";}
  8. const FOO = 0;
  9. const BAR = 1;
  10. class A { function __construct() {echo __METHOD__,"\n";} }
  11. class B { function __construct() {echo __METHOD__,"\n";} }
  12. class C { function __construct() {echo __METHOD__,"\n";} }
  13. class D { function __construct() {echo __METHOD__,"\n";} }
  14. }
  15. namespace Fiz\Biz\Buz {
  16. use Foo\Bar\Baz\{ A, B, C as AC, D };
  17. use Foo\Bar\Baz\{ function foo, function bar as buz, const FOO, const BAR AS BOZ };
  18. class C { function __construct() {echo __METHOD__,"\n";}}
  19. function bar(){echo __FUNCTION__,"\n";}
  20. const BAR = 100;
  21. new A;
  22. new B;
  23. new AC;
  24. new D;
  25. new C;
  26. foo();
  27. buz();
  28. bar();
  29. var_dump(FOO);
  30. var_dump(BOZ);
  31. var_dump(BAR);
  32. }
  33. ?>
  34. --EXPECT--
  35. Foo\Bar\Baz\A::__construct
  36. Foo\Bar\Baz\B::__construct
  37. Foo\Bar\Baz\C::__construct
  38. Foo\Bar\Baz\D::__construct
  39. Fiz\Biz\Buz\C::__construct
  40. Foo\Bar\Baz\foo
  41. Foo\Bar\Baz\bar
  42. Fiz\Biz\Buz\bar
  43. int(0)
  44. int(1)
  45. int(100)