Как удобно достать private const?

Есть клас в котором описано некоторое количество приватных констант.
class Test {
    private const ONE = 1;
    private const TWO = 2;
...
}

и соответственно есть функции для работы
class Test
{
....
    public function all()
    {
        return [
            self::ONE => 'один',
            self::TWO => 'два'
        ]
    }

    public function getOne()
    {
        return self::ONE;
    }
...
}

но вскорее этот клас может заполонить много таких констант и писать такие функции не охота каждый раз. Что можно придумать?
  • Вопрос задан
  • 360 просмотров
Решения вопроса 1
@Construct
Выглядит, как тип enum.
Вот эта библиотека сделает часть работы за вас и добавит проверку типов: https://github.com/myclabs/php-enum
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
1) Сделать константы public, их всё равно изменить нельзя. Инкапсуляция не нарушится.
2) Писать обёртки через рефлексию
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы