首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Zend框架Soap WSDL

Zend框架Soap WSDL
EN

Stack Overflow用户
提问于 2011-11-02 20:43:56
回答 2查看 1.6K关注 0票数 0

我有一个使用PHP/的工作SOAP服务。我遇到的问题是WSDL需要实现“xsd:十进制”而不是"xsd:int“。

在以下代码段上使用AutoDiscovery方法:

代码语言:javascript
复制
/* @var decimal */
public $prize;

返回以下错误:

不能添加不是对象的复杂类型的十进制,或者在'DefaultComplexType‘策略中找不到类。

使用类映射似乎不能解决这个问题。在AutoDiscovery方法中有使用“xsd:十进制”的方法吗?

以下代码片段运行良好,但在WSDL中显示了"xsd:int“:

代码语言:javascript
复制
/* @var int */
public $prize
EN

回答 2

Stack Overflow用户

发布于 2012-01-04 05:33:09

使用浮子

PHP浮动并加倍<-> xsd:float。

票数 1
EN

Stack Overflow用户

发布于 2012-10-31 10:56:28

你不能用十进制。

但是,您是否尝试过使用名为十进制的复杂类型来映射到浮点数?

代码语言:javascript
复制
class decimal
{
/** @var float */
public $prize;
}

您还需要定义正确的自动发现策略:

代码语言:javascript
复制
$autodiscover = new Zend_Soap_AutoDiscover('Zend_Soap_Wsdl_Strategy_ArrayOfTypeComplex');
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7987066

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档