As thomasrutter suggested, create a class to abstract the usage of the cURL functions. interface HttpRequest { public function setOption($name, $value); public function execute(); public function getInfo($name); public function close(); } class CurlRequest implements HttpRequest { private $handle = null; public function __construct($url) { $this->handle = curl_init($url); } public function setOpti