2010-12-10 13 views
2

Ich konsumiere eine WSDL in PHP mit dem Standard-SoapClient-Objekt. Innerhalb dieser WSDL definiert ein Objekt namens Favorite mit 5 Mitgliedern. Gibt es eine Möglichkeit, die Klasse in PHP zu erstellen und zu instanziieren, da einige der Methoden der WSDL es erforderten, dieses Objekt an sie zu übergeben. Ich habe versucht:Erstellen Sie eine Instanz einer Klasse in PHP, die in einer WSDL-Datei definiert ist

$ favorite = new Favorite();

nachdem ich die WSDL, aber das hat nicht funktioniert.

Antwort

1

Sie können die Klasse nicht direkt erstellen. Normalerweise können Sie einfach ein assoziatives Array mit den richtigen Eigenschaften für das Objekt erstellen und PHP SoapClient erledigt den Rest. Andernfalls verwenden Sie SoapVar:

$data = array(
    "abc" => 123, 
    "xyz" => 456, 
); 
$ns = "http://example.com/soap/namespace"; 
$var = new SoapVar($data, SOAP_ENC_OBJECT, "Favorite", $ns); 
Verwandte Themen