title: SOAP-ERROR: Encoding: object has no 'FinalBookingDate' property
body: <p>Before starting, I know, this errors means that I should have defined the property FinalBookingDate, but just keep reading and you will understand my point of view.</p>
  
  <p>The url is: <a href="http://bestbuyhotel1.cangooroo.net/ws/2013/ClientBackOffice_b.asmx?op=getBookingList" rel="noreferrer">http://bestbuyhotel1.cangooroo.net/ws/2013/ClientBackOffice_b.asmx?op=getBookingList</a>
  I was testing first with SoapUi, and I successfull get the list that I need:
  <img src="https://i.stack.imgur.com/e0sSE.png" alt="soapui"></p>
  
  <p>And on php, I only can get this response: <img src="https://i.stack.imgur.com/gWc9m.png" alt="SOAP-ERROR: Encoding: object has no &#39;FinalBookingDate&#39; property"></p>
  
  <p>The SoapClient from php is:</p>
  
  <pre><code>$params = array('soap_version'   =&gt; SOAP_1_2, 'compression' =&gt; SOAP_COMPRESSION_ACCEPT | SOAP_COMPRESSION_GZIP, 'encoding'=&gt;'UTF-8', 'trace' =&gt; 1, 'exceptions' =&gt; true, 'cache_wsdl' =&gt; WSDL_CACHE_NONE, 'features' =&gt; SOAP_SINGLE_ELEMENT_ARRAYS);
  $client = new \SoapClient('http://bestbuyhotel1.cangooroo.net/ws/2013/ClientBackOffice_b.asmx?wsdl', $params);
  </code></pre>
  
  <p>And then, the code to retrieve the data:</p>
  
  <pre><code>    /*
      $query = array(
          'InitialServiceDate' =&gt; '2015-01-20',
          'InitialBookingDate' =&gt; '2015-01-20',
          'FinalBookingDate' =&gt; '2015-01-20',
          'FinalServiceDate' =&gt; '2015-01-20',
          'CreationUserId' =&gt; 1338,
          'CityId' =&gt; 4166,
          'ServiceTypes' =&gt; array('eServiceType' =&gt; 'HOTEL')
      );
       */
      $query = array(
          'InitialBookingDate' =&gt; '2015-01-20',
          'ServiceTypes' =&gt; array('eServiceType' =&gt; 'HOTEL')
      );
      $args = new \stdClass;
      $args-&gt;credential = new \stdClass;
      $args-&gt;credential-&gt;UserName = $conn['userPass']['usr'];
      $args-&gt;credential-&gt;Password = $conn['userPass']['pass'];
      $args-&gt;searchBookingCriteria = new \stdClass;
      $args-&gt;searchBookingCriteria-&gt;InitialBookingDate = '2015-01-20';
      $args-&gt;searchBookingCriteria-&gt;ServiceTypes = new \stdClass;
      $args-&gt;searchBookingCriteria-&gt;ServiceTypes-&gt;eServiceType = 'HOTEL';
  
      //$args = array('credential'=&gt;$credentials, 'searchBookingCriteria' =&gt; $query);
      $data = $conn['client']-&gt;getBookingList($args);
      print_r($data);
      exit;
  </code></pre>
  
  <p>As you can see, I tried 2 ways to send the $args to getBookingList, as far I know both of then is valid and yet both of then (with array or object) return the same error. On the code commented at first you can see that I tried to define all does properties that the web service asks but after defining all of then I get a empty result.</p>
  
  <p>My question is, there is some extra param to define on SoapClient that I should do? Why the SoapUI can do it with success? What I have missing here?</p>
  
  <p>Bonus: A print of SoapUI full screen with the default request including the optional params <a href="https://www.evernote.com/shard/s14/sh/fb5ac276-8147-4e09-95bb-afa0be66d7a6/d273441c74186bf1e600b42ab3303899/deep/0/SoapUI-5.0.0.png" rel="noreferrer">https://www.evernote.com/shard/s14/sh/fb5ac276-8147-4e09-95bb-afa0be66d7a6/d273441c74186bf1e600b42ab3303899/deep/0/SoapUI-5.0.0.png</a></p>