array( 'method'=>$method, 'timeout'=>$timeOut, 'follow_location'=>$followRedirections ), "ssl"=>array( "verify_peer"=>false, "verify_peer_name"=>false ) ); $stream = stream_context_create($options); $output = file_get_contents($url, false, $stream); } return $output; } public static function download($url, $destination) { $data = self::http($url, $method='GET', $verifySSL=true, $timeOut=30, $followRedirections=true, $binary=true, $headers=false); return file_put_contents($destination, $data); } public static function getIP() { if (getenv('HTTP_CLIENT_IP')) $ip = getenv('HTTP_CLIENT_IP'); else if(getenv('HTTP_X_FORWARDED_FOR')) $ip = getenv('HTTP_X_FORWARDED_FOR'); else if(getenv('HTTP_X_FORWARDED')) $ip = getenv('HTTP_X_FORWARDED'); else if(getenv('HTTP_FORWARDED_FOR')) $ip = getenv('HTTP_FORWARDED_FOR'); else if(getenv('HTTP_FORWARDED')) $ip = getenv('HTTP_FORWARDED'); else if(getenv('REMOTE_ADDR')) $ip = getenv('REMOTE_ADDR'); else return false; return $ip; } }