Habari\InputFilter::glue_url PHP Метод

glue_url() публичный статический Метод

Restore a URL separated by a parse_url() call.
public static glue_url ( $parsed_url )
$parsed_url array An array as returned by parse_url()
    public static function glue_url($parsed_url)
    {
        if (!is_array($parsed_url)) {
            return false;
        }
        $res = '';
        $res .= $parsed_url['scheme'];
        if ($parsed_url['is_pseudo'] || in_array(strtolower($parsed_url['scheme']), array('mailto', 'callto'))) {
            $res .= ':';
        } else {
            if (!$parsed_url['is_relative']) {
                $res .= '://';
            }
        }
        if ($parsed_url['is_pseudo']) {
            $res .= $parsed_url['pseudo_args'];
        } else {
            // user[:pass]@
            if ($parsed_url['user']) {
                $res .= $parsed_url['user'];
                if ($parsed_url['pass']) {
                    $res .= ':' . $parsed_url['pass'];
                }
                $res .= '@';
            }
            $res .= $parsed_url['host'];
            if (!empty($parsed_url['port'])) {
                if (array_key_exists($parsed_url['scheme'], Utils::scheme_ports()) && Utils::scheme_ports($parsed_url['scheme']) == $parsed_url['port']) {
                    // default port for this scheme, do nothing
                } else {
                    $res .= ':' . $parsed_url['port'];
                }
            }
            if (!empty($parsed_url['path'])) {
                $res .= $parsed_url['path'];
            } else {
                $res .= '/';
            }
            if ($parsed_url['query']) {
                $res .= '?' . $parsed_url['query'];
            }
            if ($parsed_url['fragment']) {
                $res .= '#' . $parsed_url['fragment'];
            }
        }
        return $res;
    }