All pastes #2047087 Raw Edit

Anonymous

public php v1 · immutable
#2047087 ·published 2011-04-16 09:01 UTC
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);		}}?>