public static function fromXML($type, $xml) { $obj = new self($type); foreach ($xml->attributes() as $k => $v) { $obj->addAttr($k, $v); } foreach ($xml as $k => $v) { $obj->addChild($k, ResponseObj::fromXML($k, $v)); } return $obj; }
public static function buildFromCurlResponse($curl_response) { $response = new self(); $t = new \SimpleXMLElement($curl_response); foreach ($t as $k => $v) { if ($k == 'Request') { foreach ($t->Request[0] as $k => $v) { $response->setHeader($k, $v); } } else { $obj = ResponseObj::fromXML($k, $v); $response->setProperty($k, $obj); // echo $k.'.'. print_r($v, 1) ."\n"; } } return $response; }