ns_089.phpt 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. --TEST--
  2. Group use statements
  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\{
  17. A,
  18. B,
  19. C as AC,
  20. D,
  21. // comment between declarations
  22. function foo,
  23. function bar as buz,
  24. const FOO,
  25. const BAR AS BOZ
  26. };
  27. class C { function __construct() {echo __METHOD__,"\n";}}
  28. function bar(){echo __FUNCTION__,"\n";}
  29. const BAR = 100;
  30. new A;
  31. new B;
  32. new AC;
  33. new D;
  34. new C;
  35. foo();
  36. buz();
  37. bar();
  38. var_dump(FOO);
  39. var_dump(BOZ);
  40. var_dump(BAR);
  41. }
  42. ?>
  43. --EXPECT--
  44. Foo\Bar\Baz\A::__construct
  45. Foo\Bar\Baz\B::__construct
  46. Foo\Bar\Baz\C::__construct
  47. Foo\Bar\Baz\D::__construct
  48. Fiz\Biz\Buz\C::__construct
  49. Foo\Bar\Baz\foo
  50. Foo\Bar\Baz\bar
  51. Fiz\Biz\Buz\bar
  52. int(0)
  53. int(1)
  54. int(100)