rendered paste body<?phpclass CurlRESTClient { var $curl; var $baseUrl; public function __construct($baseUrl = NULL) { if (isset($baseUrl)) $this->baseUrl = $baseUrl; } private function initRequest($url) { if (isset($this->baseUrl)) $url = $this->baseUrl . $url; $this->curl = curl_init($url); curl_setopt($this->curl, CURLOPT_RETURNTRANSFER, true); } public function sendPostRequest($url, $data) { $this->initRequest($url); curl_setopt($this->curl, CURLOPT_POST, true); curl_setopt($this->curl, CURLOPT_POSTFIELDS, $data); return $this; } public function sendGetRequest($url, $data) { $url .= '?' . (is_array($data) ? $this->makeQuery($data) : (string) $data); $this->initRequest($url); return $this; } public function sendPutRequest($url, $data) { $this->initRequest($url); curl_setopt($this->curl, CURLOPT_CUSTOMREQUEST, 'PUT'); curl_setopt($this->curl, CURLOPT_POSTFIELDS, $this->makeQuery($data)); return $this; } public function sendDeleteRequest($data) { $this->initRequest($url); curl_setopt($this->curl, CURLOPT_CUSTOMREQUEST, 'DELETE'); curl_setopt($this->curl, CURLOPT_POSTFIELDS, $this->makeQuery($data)); return $this; } public function getResponse() { $response = curl_exec($this->curl); $this->close(); return $response; } private function makeQuery($data) { // For extending later if needed. $queryString = http_build_query($data); return $queryString; } private function close() { curl_close($this->curl); }}?>