Переопределение Доктрина enum по умолчанию getter - PullRequest
2 голосов
/ 15 декабря 2011

В базовом классе:

@ method enum getWeightType () Возвращает значение "weight_type" текущей записи

Подкласс:

class Exercise extends BaseExercise
{
    public function getWeightType() 
    {
        $type = parent::getWeightType();
        if ($type == 'free') {
            return 'Wolny';
        } else {
            return 'Stacjonarny';
        }
    }
}

поэтому в основном я хочу вывести значения, отличные от хранилищ в базе данных.

В indexSuccess:

echo $exercise->getWeightType()

Я получаю ошибку:

Неустранимая ошибка: Максимальная функциядостигнут уровень вложенности 100, прерывание

Может ли кто-нибудь дать мне какой-нибудь совет?

1 Ответ

1 голос
/ 15 декабря 2011

Вам необходимо использовать защищенный метод при переопределении:

$type = $this->_get('weight_type');

В противном случае вы просто будете бегать по кругу, потому что он будет продолжать пытаться вызвать метод доступа, который вы переопределяете, так и не получив метод, который фактически получает внутреннее значение.

...