Проблема с Ответом Quinn Comendant , что $request
из __doRequest()
будет затем обработано __call()
, и пользователь увидит массив параметров вместо реального XML-запроса.Чтобы предотвратить это, можно использовать такой обходной путь:
class DummySoapClient extends SoapClient {
function __construct($wsdl, $options) {
parent::__construct($wsdl, $options);
}
function __doRequest($request, $location, $action, $version, $one_way = 0) {
throw new Exception($request);
}
function __call($function_name, $arguments)
{
try {
parent::__call($function_name, $arguments);
} catch (Exception $e) {
return $e->getMessage();
}
}
}
Опция trace
здесь не нужна, поскольку мы не вызываем __getLastRequest()
или другие соответствующие функции.