我需要创建一个SOAP请求,如下所示:
<soapenv:Body> <getItemsForProject> <token> <user>?</user> <password>?</password> </token> <projectId></projectId> <start>0</start> <count>0</count> </getItemsForProject> </soapenv:Body>
该操作期望:
[209] => struct getItemsForProject { wsAuth token; long projectId; int start; int count; }
我尝试了以下但仍然遇到PHP致命错误:SOAP-ERROR:编码:对象没有’start’属性
我知道可以像这样创建令牌对象,因为我已经将它用于另一个操作:
$auth->token = new \stdClass; $auth->token->user = $username; $auth->token->password = $password;
但是,为’start’参数执行类似操作会导致致命错误消息失败.这是代码的一部分:
$opts = new \StdClass; $opts->projectId = 123; $opts->start = 0; $opts->count = 0; $resp = $soap->getItemsForProject($auth,$opts); echo $soap->__getLastRequest() ."\n";
我无法使用$soap-> __ getLastRequest()打印完整的soap请求,因为它在发出请求之前返回致命错误.同样,我不能在$resp上使用var_dump(),因为它在执行该行之前就已经死了.我怎么知道实际发送的是什么?!如果我知道,那么我可以更轻松地调试它.
谢谢,
NS
尝试类似的东西:
$myClass->token = new \stdClass; $myClass->token->user = $username; $myClass->token->password = $password; $myClass->projectId = 123; $myClass->start = 0; $myClass->count = 0; $resp = $soap->getItemsForProject($myClass);