Just to complete the function shape in the above neat example:
<?php
interface Colorful
{
    public function color(): string;
}
enum Suit implements Colorful
{
    case Hearts;
    case Diamonds;
    case Clubs;
    case Spades;
    public function color(): string
    {
        return match($this) {
            Suit::Hearts, Suit::Diamonds => 'Red',
            Suit::Clubs, Suit::Spades => 'Black',
        };
    }
    public function shape(): string
    {
           return match($this) {
               Suit::Hearts => '❤️', 
               Suit::Diamonds => '💎', 
               Suit::Clubs => '♣️', 
               Suit::Spades => ' ♠️'
           };
       
    }
}
echo Suit::Diamonds->shape();
echo PHP_EOL;
echo Suit::Clubs->shape();