Poniedziałek, 17 lutego 2020 • 48 dzień roku • Imieniny: Donata, Łukasza, Zbigniewa Kontakt

Przykład klasy w PHP ułatwiającej korzystanie z biblioteki cURL

Pobierz plik

class cURL {

    public $status;
    private $url;
    private $useragent;

    public function __construct($url, $useragent) {
	$this->url = $url;
	$this->useragent = $useragent;
	$this->checkUrl();
    }

    private function checkUrl() {
	//
	$ch = curl_init();
	curl_setopt ($ch, CURLOPT_URL, $this->url);
	curl_setopt ($ch, CURLOPT_USERAGENT, $this->useragent);
	curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt ($ch, CURLOPT_TIMEOUT, 10);
	curl_setopt ($ch, CURLOPT_NOBODY, 1);
	//
	curl_exec($ch);
	$this->status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
	curl_close($ch);
    }

    public function getContents() {
	//
	$ch = curl_init();
	curl_setopt ($ch, CURLOPT_URL, $this->url);
	curl_setopt ($ch, CURLOPT_USERAGENT, $this->useragent);
	curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt ($ch, CURLOPT_FILETIME, true);
	//
	$contents = curl_exec($ch);
	$info = curl_getinfo($ch);
	curl_close($ch);
	//
	$result = array("contents" => $contents, "info" => $info);
	return $result;
    }

    public function getHeaders() {
	//
	$ch = curl_init();
	curl_setopt ($ch, CURLOPT_URL, $this->url);
	curl_setopt ($ch, CURLOPT_USERAGENT, $this->useragent);
	curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt ($ch, CURLOPT_NOBODY, 1);
	curl_setopt ($ch, CURLOPT_HEADER, 1);
	curl_setopt ($ch, CURLOPT_FILETIME, true);
	//
	$contents = curl_exec($ch);
	$info = curl_getinfo($ch);
	curl_close($ch);
	//
	$result = array("contents" => $contents, "info" => $info);
	return $result;
    }

}

Zobacz też:

Jak przy pomocy PHP sprawdzić datę modyfikacji pliku na zdalnym serwerze?