php - 使用 WSDL 构建用于 SOAP 的 PHP 数组

标签 php web-services wsdl soapserver

我正在用 PHP 5.2 编写一个 SoapServer 以将空缺列表返回给另一个应用程序。我的 WSDL 文档需要一个复杂的类型:

<xsd:element name="Vacancies">                            
  <xsd:complexType>
    <xsd:sequence>  
      <xsd:element name="Vacancy" type="ns:VacancyType" minOccurs="0" maxOccurs="unbounded"></xsd:element>
    </xsd:sequence>
  </xsd:complexType>
</xsd:element>

我的功能是生成一个大的嵌套数组来组装每个空位,然后将数组的数组(即:空位)返回给 SoapServer。

不幸的是,每个数组都有索引。因此,Vacancies 中的每个 VacancyType 元素都有一个唯一的索引。这似乎抛出了 WSDL 定义,返回给我的数据只是抛出一个解析错误。我通常将关联数组用于键对值,但是当我处理 n 个 VacancyType 实例时,它不起作用,因为没有唯一引用。

对于这种情况是否有已知的解决方法(例如:可能是一个对象),或者我应该修改我的 WSDL 文档以适应索引数组?

谢谢

最佳答案

根据 http://sam.xnet.tk/post/15/php-soap-server-part-2/ rpc/literal 样式与 xsd 序列一起使用。但是,我也无法使其与文档/文字包装样式一起使用。

关于php - 使用 WSDL 构建用于 SOAP 的 PHP 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1922272/

相关文章:

javascript - 网站保存用户详细信息

java - Apache CXF 将签名证书作为 BinarySecurityToken 添加到 WS-security header 中

java - 无法解析 WSDL - 没有这样的文件或目录

php - 如何将ajax结果读取为数组而不是字符串

php - Laravel 5.4 Raw 未按预期工作,但在 mySQL 中工作

java - Soap:从http到https的地址位置

coldfusion - wsdlsoap :address has http while the URL itself is in https; so, 是http还是https?

php - Laravel 5.4 中的数据未从 Controller 存储到数据库中

php - 当我尝试从 RedBeanPHP 中通过 R::exec 执行查询时,为什么会出现错误?

java - Android 通过.net webservices 发送推送通知