initial commit
This commit is contained in:
@@ -0,0 +1,88 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Created by Pensare Software.
|
||||
* User: Theo Weijmer
|
||||
* Date: 27/11/2016
|
||||
* Time: 16:00
|
||||
*/
|
||||
class CurlWrapper {
|
||||
|
||||
private $curl;
|
||||
private $remoteURL;
|
||||
private $method;
|
||||
private $data;
|
||||
private $result;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public function getResult()
|
||||
{
|
||||
return $this->result;
|
||||
}
|
||||
|
||||
public function handle( $remoteURL, $method = 'POST', $data = [] )
|
||||
{
|
||||
$this->initialize();
|
||||
|
||||
$this->setRemoteURL( $remoteURL );
|
||||
|
||||
$this->setMethod( $method );
|
||||
|
||||
$this->setData( $data );
|
||||
|
||||
$this->setCurlOptions();
|
||||
|
||||
$this->performRemoteCall();
|
||||
|
||||
$this->closeCurl();
|
||||
|
||||
// echo $this->result;
|
||||
}
|
||||
|
||||
private function initialize()
|
||||
{
|
||||
$this->curl = curl_init();
|
||||
}
|
||||
|
||||
private function setRemoteURL( $remoteURL )
|
||||
{
|
||||
$this->remoteURL = $remoteURL;
|
||||
}
|
||||
|
||||
private function setMethod( $method )
|
||||
{
|
||||
$this->method = $method;
|
||||
}
|
||||
|
||||
private function setData( $data )
|
||||
{
|
||||
$this->data = $data;
|
||||
}
|
||||
|
||||
private function setCurlOptions()
|
||||
{
|
||||
curl_setopt_array( $this->curl, [
|
||||
CURLOPT_RETURNTRANSFER => 1,
|
||||
CURLOPT_URL => $this->remoteURL,
|
||||
CURLOPT_POST => $this->method == 'POST' ? TRUE : FALSE,
|
||||
CURLOPT_POSTFIELDS => $this->data
|
||||
]
|
||||
);
|
||||
}
|
||||
|
||||
private function performRemoteCall()
|
||||
{
|
||||
$this->result = curl_exec( $this->curl );
|
||||
}
|
||||
|
||||
private function closeCurl()
|
||||
{
|
||||
curl_close( $this->curl );
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user