Как удобно достать 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) Писать обёртки через рефлексию
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы