Pregunta

Todas las bibliotecas necesarias se realizan para el jabón. Estoy usando WSDL estándar. Movido mi código a la lámpara (RedHat Enterprise).

$params = array(
    'test1'=>'Testing',
    'test2'=> '1'
);
$soapClient->method1($params);

$soapClient->getLastRequest();

Resultados:

<test1>Testing</test1>
<test2>false</test2>

Ha ocurrido alguna a cualquiera y ¿cómo solucionarlo?

¿Fue útil?

Solución

Creo que el problema puede ser la forma Zend_Soap_Client cuando el WSDL tiene un parámetro que se define como booleano no convertirá correctamente un "verdadero", "1" en un verdadero booleano. Tuve que forzar el tipo de datos de ajustes manuales. Una vez hecho todo funcionaba.

$params = array(
    'test1'=> 'Testing',
    'test2'=> true
);

Creo que la razón de que esto ocurrió tenía que ver con la de las diferentes versiones de PHP.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top