2016-05-14 10 views
0

I und Klasse in eine andere Klasse wie eine Variable in MVC-Methode erhalten senden müssen senden:Wie und Extrakt Klasse

class Demo { 

private $vars = array(); 

function set($var , $data) { 
    $this->vars[$var] = $data; 
} 


function request() { 

    extract($this->vars); 

     var_dump($vars); 

    } 

} 

Und ich will oben Klasse in diese verwenden:

class Test extends foo { 

    function __construct(){ 
     $this->demo = new Demo(); 
    } 

    function register(){ 
     $user = Load::model('user');//Now User Is An Object 
     $this->demo->set('user',"$user");//This Is Error 
     $this->demo->request(); 
} 

Catchable fatal error: Object of class user could not be converted to string in

+0

Ist die Endung'} 'in den eigentlichen Code zu erstellen? – sjsam

Antwort

-1

entfernen die Anführungszeichen

$this->demo->set('user', $user); 

Und vergessen Sie nicht Ihre Variable in der Klasse Rahmen für die Klasse `test`

class Test extends foo { 
    public $demo; 

tun sollten, ist der Trick

+0

Bitte geben Sie eine Erklärung für die Aktion, damit sie für die allgemeine Leserschaft nützlich ist. – sjsam

-1
class Test extends foo { 
     protected $demo; // you missed to declare this variable  

     function __construct(){ 
      $this->demo = new Demo(); 
     } 

     function register() { 
      $user = Load::model('user');//Now User Is An Object 
      $this->demo->set('user', $user); 
      $this->demo->request(); 
     } 
} 
+0

Bitte eine Erklärung abgeben. – sjsam