traits.phpt 450 B

12345678910111213141516171819202122232425262728293031
  1. --TEST--
  2. Enum can use traits
  3. --FILE--
  4. <?php
  5. trait Rectangle {
  6. public function shape(): string {
  7. return "Rectangle";
  8. }
  9. }
  10. enum Suit {
  11. use Rectangle;
  12. case Hearts;
  13. case Diamonds;
  14. case Clubs;
  15. case Spades;
  16. }
  17. echo Suit::Hearts->shape() . PHP_EOL;
  18. echo Suit::Diamonds->shape() . PHP_EOL;
  19. echo Suit::Clubs->shape() . PHP_EOL;
  20. echo Suit::Spades->shape() . PHP_EOL;
  21. ?>
  22. --EXPECT--
  23. Rectangle
  24. Rectangle
  25. Rectangle
  26. Rectangle