Я создаю интерфейс Surveyanswer , который расширяет BackedEnum . Я расширяю BackedEnum, чтобы убедиться, что созданные перечисления поддерживаются .
interface SurveyAnswerInterface extends BackedEnum
{
public static function getQuestion(): string;
}
< /code>
Тогда я создаю свои перечисления, которые реализуют этот интерфейс < /p>
enum SituationAnswer: string implements SurveyAnswerInterface
{
case NEW = 'new';
case OLD = 'old';
public static function getQuestion(): string
{
return 'What is your situation?';
}
}
var_dump(SituationAnswer::NEW::getQuestion()); # string(23) "What is your situation?"
< /code>
Этот кусок кода работает совершенно нормально. Демо: https://3v4l.org/nusnp
написан P> SurveyAnswerinterface: 10 PhanenumCannotimplement Class Whysainswerinterface не может реализовать \ backedemum в php 8.1+
< /blockquote>
Подробнее здесь: https://stackoverflow.com/questions/763 ... -interface
PhanenumCannotimplement - интерфейс не разрешен для расширения интерфейса BackedEnum ⇐ Php
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Symfony: использование PHP BackedEnum в качестве требований к маршруту в формате YAML
Anonymous » » в форуме Php - 0 Ответы
- 6 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как создать метод расширения, затмевающий обычные расширения LINQ? [дубликат]
Anonymous » » в форуме C# - 0 Ответы
- 98 Просмотры
-
Последнее сообщение Anonymous
-