title: NuSOAP - Function parameters don't map correctly
body: <p>I'm writing a web service using NuSOAP in PHP. To test it, I have written both a server and a client. On the server end, I register the function like so:</p>
  
  <pre><code>$server-&gt;register(
      "testFunction",
      array("param1" =&gt; "xsd:string", "param2" =&gt; "xsd:string"),
      array("result" =&gt; "xsd:string"),
      "http://localhost/testApp"
  );
  </code></pre>
  
  <p>And on the client looks like this:</p>
  
  <pre><code>require_once("./lib/nusoap.php");
  
  $client = new soapclient("http://localhost/testApp/server.php");
  $function = $_GET["function"];
  unset($_GET["function"]);
  $result = $client-&gt;call($function, $_GET);
  
  echo "&lt;pre&gt;". print_r($result, true) ."&lt;/pre&gt;";
  </code></pre>
  
  <p>When I call it like</p>
  
  <pre><code>http://localhost/testApp/client.php?function=testFunction&amp;param1=value1&amp;param2=value2
  </code></pre>
  
  <p>it works fine, but if I switch param1 and param2 and say</p>
  
  <pre><code>http://localhost/testApp/client.php?function=testFunction&amp;param2=value2&amp;param1=value1
  </code></pre>
  
  <p>then param1 gets the value <code>value2</code> and param2 gets the value <code>value1</code>. So obviously, it just goes by the order of the parameters, not the names.</p>
  
  <p>I figured that since I registered the function with specific parameter names and then called the function, specifying those parameter names, that they would be assigned accordingly.</p>
  
  <p>Am I missing something? What's the point of specifying the parameter names if they will just be thrown out and assigned in whatever order you entered them? Is there a way to make it so that I can enter the parameters in any order and have them map correctly?</p>