2010-10-28 6 views

ответ

2

Вы, вероятно, хотите что-то больше, как это:

class Customers extends Controller 
{ 
    private $foo; 
    public function __construct() 
    { 
    parent::__construct(); 
    $this->foo = $this->session->userdata('foo'); 
    } 
} 

Трудно знать наверняка, не зная больше о вашем проекте.

+0

Correct в принципе, но '$ this-> session' не может быть инициализированный объект в этот момент еще ... –

+0

Это сработало отлично! – Peter

+0

@Pekka. Вот почему я вызываю конструктор родителя, поскольку это единственный способ, которым он мог существовать в этот момент. – Matthew

0

Это невозможно: $this не существует в данный момент, когда вы определяете класс, и вы вообще не можете вызывать функции в этой точке.

В конструкторе необходимо назначить $foo, после того как $this->session был инициализирован. (@konforce бить меня к примеру.)

1

Вы можете установить его с помощью конструктора, потому что вы из родительского принадлежности класса:

class Customers extends Controller { 
    private $foo = null; 

    function __construct(){ 
    parent::__construct(); 
    $this->foo = $this->session->userdata('foo'); 
    } 
} 
+0

Это сработало отлично. Спасибо! – Peter

+0

@Peter: Добро пожаловать :) – Sarfraz

Смежные вопросы