note 114787 added to soapclient.call

From: Date: Mon, 07 Apr 2014 00:27:12 +0000
Subject: note 114787 added to soapclient.call
Groups: php.notes 
Request: Send a blank email to php-notes+get-199202@lists.php.net to get a copy of this message
If you are using a WSDL, the library will strip out anything from your parameters that is not defined in WSDL, without giving you any notice about this. So if your parameters are not fully matching the WSDL, it will simply send no parameters at all. This can be a bit hard to debug if you don't have access to the target server. __soapCall() expects parameters in an array called 'parameters' as opposed to calling the function via it's WSDL name, where it accepts the parameters as a plain array. I.e. if a function called sendOrder expects a parameter (array) called orderDetails, you can call it like this: $orderDetails = array(/* your data */); $soap->sendOrder(array('orderDetails' => $orderDetails)); Which is equivalent to: $client->__soapCall('sendOrder', array('parameters' => array('orderDetails' => $orderDetails))); Note the additional 'parameters' key used in __soapCall(). ---- Server IP: 72.52.91.14 Probable Submitter: 203.161.148.102 ---- Manual Page -- http://php.net/manual/en/soapclient.call.php Edit -- https://master.php.net/note/edit/114787 Del: integrated -- https://master.php.net/note/delete/114787/integrated Del: useless -- https://master.php.net/note/delete/114787/useless Del: bad code -- https://master.php.net/note/delete/114787/bad+code Del: spam -- https://master.php.net/note/delete/114787/spam Del: non-english -- https://master.php.net/note/delete/114787/non-english Del: in docs -- https://master.php.net/note/delete/114787/in+docs Del: other reasons-- https://master.php.net/note/delete/114787 Reject -- https://master.php.net/note/reject/114787 Search -- https://master.php.net/manage/user-notes.php

« previous php.notes (#199202) next »