代码之家  ›  专栏  ›  技术社区  ›  KB22

PHP Web服务和数据类型

  •  1
  • KB22  · 技术社区  · 15 年前

    我刚刚遇到了一个问题:

    我有一个基于PHP的Web服务,它返回有关客户的统计数据 以WSDL复杂类型的形式。实际的复杂类型包括

    xsd:string
    xsd:int
    xsd:float
    

    现在,由于我的Web服务是现有系统的适配器,我不能 realy控制将哪些值打包到复杂类型中。也就是说,它可以-而且确实可以- 如果定义为xsd:float的字段被PHP应用程序简单地设置为“”。

    只要基于PHP的系统使用该服务,这就没问题,但是当然 类型化框架-如.NET-在强制转换“”时阻塞,以浮动和抛出令人讨厌的异常。

    因为我无法可靠地控制进入复杂类型的值,所以我正在寻找在Web服务中处理无效数据的另一种方法。

    有人也碰到过这个吗?我很感激你,也很感激你的想法和想法,提前谢谢你!

    K

    1 回复  |  直到 15 年前
        1
  •  2
  •   Frankie    15 年前

    你为什么不用 型铸造 ?

    xsd:<?=(string) $string?>
    xsd:<?=(int) $int?>
    xsd:<?=(float) $float?>
    

    这会使事情完全像你想要的那样,或者我误解了这个问题?