Обратите внимание, что это:
$this->cons = $aCons;
, а не это:
$this->$cons = $aCons;
Если вы укажете $this->$cons
, PHP сначала будет смотреть на значение в $cons
использует это как имя переменной экземпляра.В вашем случае в $cons
пока ничего нет, поэтому он найдет пустое имя, которое вызывает сообщение об ошибке.
Этот тип косвенного обращения не является тем, что вы хотите сделать здесь, поэтому не ставьте там знак доллара дважды!