Enrique
Enrique

Reputation: 1045

Convert old NuSoap code into PHP core soap functions

I've been testing nuSoap with codeIgniter (PHP Framework) but seems nuSoap isn't prepared to work with latest php 5.3, even if I download a patched nusoap version for php 5.3

I have the following code:

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);

Can you help me to convert these functions into PHP soap functions? Including proxy function?

Upvotes: 2

Views: 3393

Answers (2)

Enrique
Enrique

Reputation: 1045

The following code was the correct way of calling the above webservice. I've just only modified the $ser_params array. Now it has a sub array

$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);

Upvotes: -1

Ivo Sabev
Ivo Sabev

Reputation: 5240

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);

becomes

$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);

Upvotes: 2

Related Questions