PHP SoapClient-带长整数的SOAP请求
我对大整数值和PHP SoapClient类有一些问题。SoapClient似乎不能处理大的数值,而且我不能发送大于PHP_INT_MAX(2147483647)的数字,即使SOAP参数类型是“xsd:long” 这是我需要调用的SOAP方法的WSDL规范:PHP SoapClient-带长整数的SOAP请求,php,soap,long-integer,soap-client,Php,Soap,Long Integer,Soap Client,我对大整数值和PHP SoapClient类有一些问题。SoapClient似乎不能处理大的数值,而且我不能发送大于PHP_INT_MAX(2147483647)的数字,即使SOAP参数类型是“xsd:long” 这是我需要调用的SOAP方法的WSDL规范: <message name="doFinishItemRequest"> <part name="session-handle" type="xsd:string"/> <part name="fini
<message name="doFinishItemRequest">
<part name="session-handle" type="xsd:string"/>
<part name="finish-item-id" type="xsd:long"/>
<part name="finish-cancel-all-bids" type="xsd:int"/>
<part name="finish-cancel-reason" type="xsd:string"/>
</message>
它将3599569593更改为2147483647,SOAP服务告诉我传递了错误的ID
有解决办法吗?(我无法更改WSDL。)您还没有显示任何PHP代码,但是转换为float似乎可以工作
$soapVar = (float)'3599569593';
或者当您将其作为参数发送时。PHP Soap扩展用于仅支持32位整数,即使在64位系统上也是如此。可能还是这样。在Win7+PHP5.5上为我工作过。非常感谢。
$soapVar = (float)'3599569593';