response = $response; } /* Returns the XML portion of the response */ public function toXml() { return $this->response['ResponseBody']; } /* toJson - converts XML into Json * @param $response [XML] */ public function toJson() { $response = $this->simpleXmlObject(); return (json_encode($response)); } /* toArray - converts XML into associative array * @param $this->response [XML] */ public function toArray() { $response = $this->simpleXmlObject(); // Converting the SimpleXMLElement Object to array() $response = json_encode($response); return (json_decode($response, true)); } private function simpleXmlObject() { $response = $this->response; // Getting the HttpResponse Status code to the output as a string $status = strval($response['Status']); // Getting the Simple XML element object of the XML Response Body $response = simplexml_load_string((string) $response['ResponseBody']); // Adding the HttpResponse Status code to the output as a string $response->addChild('ResponseStatus', $status); return $response; } /* Get the status of the BillingAgreement */ public function getBillingAgreementDetailsStatus($response) { $data= new \SimpleXMLElement($response); $namespaces = $data->getNamespaces(true); foreach($namespaces as $key=>$value){ $namespace = $value; } $data->registerXPathNamespace('GetBA', $namespace); foreach ($data->xpath('//GetBA:BillingAgreementStatus') as $value) { $baStatus = json_decode(json_encode((array)$value), TRUE); } return $baStatus ; } }