2016-03-28 9 views
0

Hier ist die KlasseKann nicht variabel in meiner PHP-Klasse erholen

class cwb extends SoapClient { 
    protected $raw_xml; 
    protected $filename; 
    public $users; 

    /** 
    * @param mixed $entity 
    */ 
    public function __construct($entity = '') { 
    parent::__construct('http://privatesite?WSDL'); 
    $this->raw_xml = $this->createXmlFile($entity->token); 
    $this->filename = $this->createXmlFilename($entity->nome); 
    $this->users = $this->createUserArray(); 
    } 

    /** 
    * @return string 
    */ 
    private function getFullPath(){ 
    return (string)$this->getPath() . '/' . $this->filename; 
    } 
} 

Wenn ich versuche, meine protected $filename in private function getFullPath() zugreifen zu können, meine Variable immer leer ist, kennt jemand eine Lösung, den Inhalt der Variable zuzugreifen ?

+0

Vielleicht ist es wirklich leer? Hast du versucht, 'var_dump ($ this-> filename);' zu überprüfen? –

+0

'var_dump ($ entity);' – AbraCadaver

+0

Ja, es ist leer, wenn ich einen Standardwert in der Klassendefinition einstelle, kann ich normal auf die Variable zugreifen, aber wenn ich die Variable im Konstruktor fülle, ist die Variable leer. –

Antwort

0

Changed die Ladereihenfolge aus:

$this->raw_xml = $this->createXmlFile($entity->token); 
$this->filename = $this->createXmlFilename($entity->nome); 
$this->users = $this->createUserArray(); 

An:

$this->users = $this->createUserArray(); 
$this->raw_xml = $this->createXmlFile($entity->token); 
$this->filename = $this->createXmlFilename($entity->nome); 

die notwendigen Elemente geladen, um die Variable in der nächsten Anforderung zu erholen.

Dank @Dave Chen zur Antwort.

Verwandte Themen