bug55086.phpt 609 B

123456789101112131415161718192021222324252627282930313233343536
  1. --TEST--
  2. Bug #55086 (Namespace alias does not work inside trait's use block)
  3. --FILE--
  4. <?php
  5. namespace N1 {
  6. trait T1 {
  7. public function hello() { return 'hello from t1'; }
  8. }
  9. trait T2 {
  10. public function hello() { return 'hello from t2'; }
  11. }
  12. }
  13. namespace N2 {
  14. use N1\T1;
  15. use N1\T2;
  16. class A {
  17. use T1, T2 {
  18. T1::hello insteadof T2;
  19. T1::hello as foo;
  20. }
  21. }
  22. $a = new A;
  23. echo $a->hello(), PHP_EOL;
  24. echo $a->foo(), PHP_EOL;
  25. try {
  26. } catch (namespace\Foo $e)
  27. {
  28. }
  29. }
  30. ?>
  31. --EXPECT--
  32. hello from t1
  33. hello from t1