我想在我的自定义类中覆盖SoapClient::__doRequest()
并使用我自己的基于curl的传输,如建议here。
根据PHP手册,__doRequest()
有这个签名:
public string SoapClient::__doRequest ( string $request , string $location , string $action , int $version [, int $one_way = 0 ] )
$request
参数是:
request
XML SOAP请求。但这似乎是错误的。我在$request
中没有获得任何XML,但是像一个神秘的字符串:
string(1496) " 14120188025349F
这是我使用的简单课程:
class MySoapClient extends SoapClient
{
public function __doRequest($request, $location, $action, $version, $one_way = false)
{
var_dump($request);
return parent::__doRequest($request, $location, $action, $version, $one_way);
}
}
那有什么不对?他们是否在不更新手册的情况下改变了内部实现?作为参考,我的PHP版本在Ubuntu 12.10盒子上是5.4.6。