6

我有一个由 java 中的 web 服务生成的 WSDL,我需要在 php 应用程序中复制同样的 web 服务。

我看了看,我发现的大多数脚本只是生成客户端。我需要将被消耗的服务器端。

4

2 回答 2

5

如果您有 WSDL,那么您可以简单地将其传递给 PHP5 中定义的 SoapServer 类。

$server = new SoapServer("some.wsdl");
$server->setClass('MySoapServer');
$server->handle();

当然,您需要编写MySoapServer类来处理 WDSL 中定义的方法,以使该示例正常工作。

例如,如果 WDSL 定义了一个add($a, $b)函数,则该类将如下所示:

class MySoapServer
{
    public function add($a, $b)
    {
        return $a + $b;
    }
}

来源:http ://au1.php.net/manual/en/soapserver.soapserver.php & http://au1.php.net/manual/en/soapserver.setclass.php

于 2012-10-18T03:52:32.737 回答
0

我一直在寻找相同的功能,但对于服务器端来说,它似乎不存在这样的功能。

之后,您可以使用脚本作为 wsdl2php 来生成客户端类,并使用这些类作为信息并响应它创建的部分......然后您将使用 noetix 建议的 SoapServer 声明。

在这个网站上有一个很好的 wsdl2php 介绍:http ://www.dimuthu.org/blog/2008/09/21/wsdl2php-2-minutes-introduction/

如果有人知道生成服务器端的脚本,我仍然感兴趣:)

于 2015-07-16T16:06:00.837 回答