2010-10-28 2 views

Répondre

2

Vous voulez probablement quelque chose comme ceci:

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

Il est difficile de savoir avec certitude sans en savoir plus sur votre projet.

+0

correcte en principe, mais '$ this-> session' ne peut pas être un objet initialisé à ce moment encore .... –

+0

Cela a fonctionné parfaitement! – Peter

+0

@Pekka, C'est pourquoi j'appelle le constructeur du parent, car c'est la seule façon dont il pourrait éventuellement exister à ce moment-là. – Matthew

0

Ceci n'est pas possible: $this n'existe pas au moment où vous définissez la classe, et vous ne pouvez pas appeler du tout de fonctions du tout à ce stade.

Vous devrez affecter $foo dans le constructeur, après $this->session a été initialisé. (@konforce m'a battu à l'exemple.)

1

Vous pouvez définir avec le constructeur parce que vous êtes de classe inhérant parent:

class Customers extends Controller { 
    private $foo = null; 

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

Cela a fonctionné parfaitement. Je vous remercie! – Peter

+0

@Peter: Bienvenue :) – Sarfraz

Questions connexes