I am trying to send a soap request to a remote server and getting the response back. But the issues I am facing with is in my request one parameter is in my request i.e. I created an array of parameters needed for my request and only one parameter I am not able to see,
// The Sample Request:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<hot:HotelSearchAvailabilityReq    xmlns:hot="http://www.xxx.com/schema/hotel_v17" xmlns:com="http://www.xxx.com/schema/common_v10" TargetBranch="WAB HERE">
<com:BillingPointOfSaleInfo OriginApplication="UDT"/>
<hot:HotelLocation Location="TPA" LocationType="City">
<com:VendorLocation ProviderCode="" VendorCode="" VendorLocationID="" Key="1"/>
<com:VendorLocation ProviderCode="" VendorCode="" VendorLocationID="" Key="2"/>
<com:VendorLocation ProviderCode="" VendorCode="" VendorLocationID="" Key="3"/>
<com:VendorLocation ProviderCode="" VendorCode="" VendorLocationID="" Key="2"/>
</hot:HotelLocation>
<hot:HotelSearchModifiers NumberOfAdults="2" NumberOfRooms="1">
<com:CorporateDiscountID NegotiatedRateCode="true">CCC</com:CorporateDiscountID>
</hot:HotelSearchModifiers>
<hot:HotelStay>
<hot:CheckinDate>2012-06-01</hot:CheckinDate>
<hot:CheckoutDate>2012-06-02</hot:CheckoutDate>
</hot:HotelStay>
</hot:HotelSearchAvailabilityReq>
</soapenv:Body>
</soapenv:Envelope>
// My request is:
<?xml version="1.0" encoding="UTF-8"?> 
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://www.xxx.com/schema/common_v10" xmlns:ns2="http://www.xxx.com/schema/hotel_v19">
<SOAP-ENV:Body>
    <ns2:HotelSearchAvailabilityReq>
        <ns1:BillingPointOfSaleInfo OriginApplication="UAPI"/>
        <ns2:HotelLocation Location="LON" LocationType="City"/>
        <ns2:HotelSearchModifiers NumberOfAdults="2" NumberOfRooms="1"/>
        <ns2:HotelStay>
            <ns2:CheckinDate>2012-11-06</ns2:CheckinDate>
            <ns2:CheckoutDate>2012-11-14</ns2:CheckoutDate>
        </ns2:HotelStay>
    </ns2:HotelSearchAvailabilityReq>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope> 
In my request to that of sample request, I am not able get the parameter "VendorLocation".
//Php code: ModuleFunction.php
class HotelResultsSoapClient extends SoapClient 
{
function __construct($wsdlLocation)
{
    $trac["trace"]=1;
    $trac["use"]=SOAP_LITERAL;
    $trac["style"]=SOAP_DOCUMENT;
    $trac["compression"]=SOAP_COMPRESSION_ACCEPT | SOAP_COMPRESSION_GZIP | 5;
    //$trac["compression"]=SOAP_COMPRESSION_ACCEPT ;
    $trac["type_ns"]="";
    $trac["login"]=SOAP_CLIENT_USERNAME;
    $trac["password"]=SOAP_CLIENT_PASSWORD;
    $trac["location"]="https://xxx.com/B2BGateway/connect/uAPI/HotelService";
    $trac["version"]="SOAP_1_1";
    $trac["action"]="http://localhost:8080/kestrel/HotelService";
    parent::__construct($wsdlLocation,$trac);
}
function __doRequest($request, $location, $action, $version) 
{
    $namespace1="http://www.travelport.com/schema/hotel_v19_0";
    $namespace2="http://www.travelport.com/schema/common_v17_0";
    if(empty($_SESSION['hotelSearch']['nextResultReference']) || $_SESSION['hotelSearch']['nextResultReference'] == "notSet")
    {
    //used for sending a normal hotel request  --- do not delete just comment/ uncomment
        $request=str_replace("<ns2:HotelSearchAvailabilityReq","<ns2:HotelSearchAvailabilityReq TargetBranch=".'"'."a00000".'"'." "."xmlns:ns2=".'"'.$namespace1.'"'." "."xmlns:ns1=".'"'.$namespace2.'"',$request);
    }
    else
    {
        //used for sending next result hotel request --- do not delete just comment/ uncomment
        $request=str_replace("<ns2:HotelSearchAvailabilityReq","<ns2:HotelSearchAvailabilityReq TargetBranch=".'"'."a00000".'"'." "."xmlns:ns2=".'"'.$namespace1.'"'." "."xmlns:ns1=".'"'.$namespace2.'"',$request);
        $request=str_replace("<ns1:NextResultReference","<ns1:NextResultReference"." ".'ProviderCode="1G"',$request);   
    }
    return parent::__doRequest($request, $location, $action, $version);
}//function
function __getLastRequestHeaders()
{
    return parent::__getLastRequestHeaders();
}//function
function __getLastRequest()
{
    return parent::__getLastRequest();
}//function
  }//class
Results.php
require_once('ModuleFunctions.php');
$client = new HotelResultsSoapClient("WSDL Url");
$final = array();
$final['vc'] = {"oo","yz","hi","ii","xx"};
$final['vi'] = {"00000","12345","11111","99999","23456"};
$params = array();
// element = BillingPointOfsaleInfo ; attribute = OriginApplication.
$params["BillingPointOfSaleInfo"] = array();
$params["BillingPointOfSaleInfo"]["OriginApplication"] = "UAPI";
/* ----------------------------------------------------------------------- */
// element = HotelLocation ; attribute = Location, LocationType.
$params["HotelLocation"] = array();
$params["HotelLocation"]["Location"] = "{$destination}";
$params["HotelLocation"]["LocationType"] = "City";
/* ----------------------------------------------------------------------- */
// element = VendorLocation ; attribute = ProviderCode, VendorCode, VendorLocationID,  Key.
$params["VendorLocation"] = array();
for ($i = 0; $i < count($final['vc']); $i++) {
$params["VendorLocation"][$i] = array();
$params["VendorLocation"][$i]["ProviderCode"] = "1G";
$params["VendorLocation"][$i]["VendorCode"] = "{$final['vc'][$i]}";
$params["VendorLocation"][$i]["VendorLocationID"] = "{$final['vi'][$i]}";
}
//$params["VendorLocation"]["ProviderCode"] = "1G";
//$params["VendorLocation"]["VendorCode"] = "WV";
//$params["VendorLocation"]["VendorLocationID"] = "95625";
/* ----------------------------------------------------------------------- */
// element = HotelSearchModifiers ; attribute = NumberofAdults, NumberOfRooms.
$params["HotelSearchModifiers"] = array();
$params["HotelSearchModifiers"]["NumberOfAdults"] = "{$NumberOfAdults}";
$params["HotelSearchModifiers"]["NumberOfRooms"] = "{$NumberOfRooms}";
/* ------------------------------------------------------------------------- */
// element = CorporateDiscountID ; attribute = NegotiatedRateCode.
$params["CorporateDiscountID"] = array();
$params["CorporateDiscountID"]["NegotiatedRateCode"] = "true";
/* ------------------------------------------------------------------------- */
// element = HotelStay ; attribute = CheckinDate, CheckoutDate.
$params["HotelStay"] = array();
$params["HotelStay"]["CheckinDate"] = "{$checkInDate}";
$params["HotelStay"]["CheckoutDate"] = "{$checkOutDate}";
$response = $client->service($params);
echo "<hr>" . "Request" . "<hr/>" . "<br/>";
echo "\n" . "Request:" . htmlentities($client->__getLastRequest()) . "\n";
echo "<br/>";
My parameter array consists of it but its shown in my request
// Parameter array:
Array
(
[BillingPointOfSaleInfo] => Array
    (
        [OriginApplication] => UAPI
    )
[HotelLocation] => Array
    (
        [Location] => LON
        [LocationType] => City
    )
[VendorLocation] => Array
    (
        [0] => Array
            (
                [ProviderCode] => 1G
                [VendorCode] => oo
                [VendorLocationID] => 00000 
            )
        [1] => Array
            (
                [ProviderCode] => 1G
                [VendorCode] => yz
                [VendorLocationID] => 12345 
            )
        [2] => Array
            (
                [ProviderCode] => 1G
                [VendorCode] => hi
                [VendorLocationID] => 11111 
            )
        [3] => Array
            (
                [ProviderCode] => 1G
                [VendorCode] => ii
                [VendorLocationID] => 99999 
            )
        [4] => Array
            (
                [ProviderCode] => 1G
                [VendorCode] => xx
                [VendorLocationID] => 23456 
            )
    )
[HotelSearchModifiers] => Array
    (
        [NumberOfAdults] => 2
        [NumberOfRooms] => 1
    )
[CorporateDiscountID] => Array
    (
        [NegotiatedRateCode] => true
    )
[HotelStay] => Array
    (
        [CheckinDate] => 2012-11-06
        [CheckoutDate] => 2012-11-14
    )
)
Can any one help me out where I am getting wrong please. Note: If any more info req plz ask.
Kind Regards,