Создайте экземпляр класса в PHP, который определен в файле WSDL - PullRequest
2 голосов
/ 10 декабря 2010

Я использую WSDL в PHP с объектом SoapClient по умолчанию.Внутри этого WSDL определяется объект с именем Favorite, который имеет 5 членов.Есть ли способ, которым я могу создать и экземпляр класса в PHP, так как какой-то метод этого WSDL потребовал, чтобы я передал этот объект ему.Я попытался:

$ favourite = new Favorite ();

после того, как я использовал WSDL, но это не сработало.

1 Ответ

1 голос
/ 10 декабря 2010

Вы не можете создать класс напрямую.Обычно вы можете просто создать ассоциативный массив с правильными свойствами для объекта, а PHP SoapClient сделает все остальное.В противном случае используйте SoapVar :

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