Этот код отлично работает:
$result = $client->__call("optionalInfo", array(
new SoapParam("...", "client"),
new SoapParam("...", "add_code"))
);
Когда я пытаюсь немного абстрагироваться, чтобы сделать скрипт пригодным для повторного использования, я получаю такую ошибку:
Уловимая фатальная ошибка: объект класса SoapClient не может быть преобразован в строку
Неисправный код:
$params = array( new SoapParam($client, "client"),
new SoapParam($add_code, "add_code")
);
$result = $client->__call($functionName, $params);
Последняя строка - это то, что вызывает проблему.






Вы уверены, что хотите отправить интерфейс SoapClient в качестве аргумента для вызова функции того же объекта?
new SoapParam($client, "client")
Это было бы моей проблемой, и нет, я не хотел этого делать. «Клиент» - это поле для этой конкретной веб-службы, и я полностью упустил это из виду. Спасибо!