我有一个简单的ASP .NET Web服务正在运行,我想从php客户端调用它。我正在使用nusoap soap客户端。
以下是客户端php代码:
<?php
require_once('lib/nusoap.php');
$wsdl="http://localhost:64226/Service1.asmx?wsdl";
$client=new soapclient($wsdl, 'wsdl');
$param=array('number1'=>'2', 'number2'=>'3');
echo $client->call('add',$param);
?>
我在Web服务中创建的Web方法如下:
namespace WebService3
{
/// <summary>
/// Summary description for Service1
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ToolboxItem(false)]
public class Service1 : System.Web.Services.WebService
{
[WebMethod]
public string HelloWorld()
{
return "Hello World";
}
[WebMethod]
public string add(int x, int y)
{
int z = x + y;
return z.ToString();
}
}
}
然而,当我运行上面的PHP代码时,它不会返回传递参数的附加值。而是预览“阵列”一词
我没有PHP编程经验。我做错了上面的代码吗?需要一个快速的解决方案来解决这个问题,并从PHP调用Web服务。
提前致谢!
答案 0 :(得分:0)
替换此行
echo $client->call('add',$param);
这一个
echo $client->__soapCall('add', $param);
答案 1 :(得分:0)
现在,如果你跑了 echo $ result [“addResult”];
它应该很好地打印输出。