2

我一直在用 codeIgniter(PHP 框架)测试 nuSoap,但似乎 nuSoap 不准备使用最新的 php 5.3,即使我下载了 php 5.3 的修补 nusoap 版本

我有以下代码:

require_once(APPPATH.'libraries/NuSOAP/lib/nusoap'.EXT); //includes nusoap
$n_params = array('CityName' => 'San Juan', 'CountryName' => 'Argentina');
$client = new nusoap_client('http://www.webservicex.net/globalweather.asmx?WSDL');
$client->setHTTPProxy("10.2.0.1",6588,"","");
$result = $client->call('GetWeather', $n_params);

你能帮我把这些函数转换成 PHP 肥皂函数吗?包括代理功能?

4

2 回答 2

2
require_once(APPPATH.'libraries/NuSOAP/lib/nusoap'.EXT); //includes nusoap
$n_params = array('CityName' => 'San Juan', 'CountryName' => 'Argentina');
$client = new nusoap_client('http://www.webservicex.net/globalweather.asmx?WSDL');
$client->setHTTPProxy("10.2.0.1",6588,"","");
$result = $client->call('GetWeather', $n_params);

变成

$url = 'http://www.webservicex.net/globalweather.asmx?WSDL';
$params = array(
    'proxy_host' => '10.2.0.1',
    'proxy_port' => '6588'
    );
$client = new SoapClient($url, $params);
$client->__soapCall('GetWeather', $n_params);
于 2010-04-09T14:09:24.103 回答
-1

以下代码是调用上述 web 服务的正确方法。我刚刚修改了 $ser_params 数组。现在它有一个子数组

$url = 'http://www.webservicex.net/globalweather.asmx?WSDL';
$conn_params = array(
'proxy_host' => '10.2.0.1',
'proxy_port' => '6588'
);

$ser_params = array (
'GetWeather' => array (
"CityName" => "San Juan",
"CountryName" => "Argentina"
)
);

$client = new SoapClient($url, $conn_params);
$result = $client->__soapCall('GetWeather', $ser_params);
print_r ($result);

于 2010-04-12T18:23:53.377 回答