Http.php 1.44 KB
<?php
defined('IN_IA') or exit('Access Denied');

class Http
{
	/**
	 * @param $URL
	 * @param $data
	 * @return mixed
	 */
	static function httpPost($url, $param, $encode = true, $header = array())
	{
		$curl = curl_init();

		if (stripos($url,"https://")!==FALSE) {
			curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
			curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
			curl_setopt($curl, CURLOPT_SSLVERSION, 1); //CURL_SSLVERSION_TLSv1
		}

		if (is_string($param)) {
			$strPOST = $param;
		} else {
			$aPOST = array();
			foreach($param as $key=>$val) {
				if ($encode == false) {
					$aPOST[] = $key."=".$val;
				} else {
					$aPOST[] = $key."=".urlencode($val);
				}

			}
			$strPOST =  join("&", $aPOST);
		}

		curl_setopt($curl, CURLOPT_URL, $url);
		curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
		curl_setopt($curl, CURLOPT_POST, true);
		if (!empty($header)) {
			curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
		}
		curl_setopt($curl, CURLOPT_POSTFIELDS, $strPOST);

		$result = curl_exec($curl);
		$status = curl_getinfo($curl);
		curl_close($curl);

		if (intval($status["http_code"]) == 200) {
			return $result;
		} else {
			return false;
		}
	}

	/**
	 * @param $URL
	 * @return mixed
	 */
	static function httpGet($URL)
	{
		$ch = curl_init();
		curl_setopt($ch, CURLOPT_URL, $URL);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,0);
		$data = curl_exec($ch);
		curl_close($ch);
		return $data;
	}

}