Estoy tratando de hacer una llamada no WSDL en PHP (5.2.5) de esta manera. Estoy seguro de que me estoy perdiendo algo simple. Esta convocatoria tiene un parámetro, una cadena, llamada "zona horaria":PHP Soap llamada no WSDL: ¿cómo se pasan los parámetros?
$URL = 'http://www.nanonull.com/TimeService/TimeService.asmx';
$client = new SoapClient(null, array(
'location' => $URL,
'uri' => "http://www.Nanonull.com/TimeService/",
'trace' => 1,
));
// First attempt:
// FAILS: SoapFault: Object reference not set to an instance of an object
$return = $client->__soapCall("getTimeZoneTime",
array(new SoapParam('ZULU', 'timezone')),
array('soapaction' => 'http://www.Nanonull.com/TimeService/getTimeZoneTime')
);
// Second attempt:
// FAILS: Generated soap Request uses "param0" instead of "timezone"
$return = $client->__soapCall("getTimeZoneTime",
array('timezone'=>'ZULU'),
array('soapaction' => 'http://www.Nanonull.com/TimeService/getTimeZoneTime')
);
Gracias por cualquier sugerencia
-Dave
Lo intenté, pero pasa toda la matriz como param0. Así que no vayas. –