httpRequestReturn() public static method

Creates HTTP request using curl
public static httpRequestReturn ( mixed $response, interger $http_status, boolean $return_only_status ) : mixed
$response mixed HTTP response
$http_status interger HTTP response status code
$return_only_status boolean If set to true, the method would only return response status
return mixed
Example #1
0
    /**
     * Creates HTTP request using file_get_contents
     *
     * @param string $url                Url to send the request
     * @param string $method             HTTP request method (GET, POST, PUT, DELETE, etc)
     * @param bool   $return_only_status If set to true, the method would only return response status
     * @param mixed  $content            Content to be sent with HTTP request
     * @param string $header             Header to be set for the HTTP request
     *
     * @return mixed
     */
    public static function httpRequestFopen($url, $method, $return_only_status = false, $content = null, $header = "")
    {
        $context = array(
            'http' => array(
                'method'  => $method,
                'request_fulluri' => true,
                'timeout' => 10,
                'user_agent' => 'phpMyAdmin',
                'header' => "Accept: */*",
            )
        );
        if ($header) {
            $context['http']['header'] .= "\n" . $header;
        }
        if ($method == "POST") {
            $context['http']['content'] = $content;
        }

        $context = Util::handleContext($context);
        $response = @file_get_contents(
            $url,
            false,
            stream_context_create($context)
        );
        if (! isset($http_response_header)) {
            return null;
        }
        preg_match("#HTTP/[0-9\.]+\s+([0-9]+)#", $http_response_header[0], $out );
        $http_status = intval($out[1]);
        return Util::httpRequestReturn($response, $http_status, $return_only_status);
    }