public function toString()
    {
        // reconstruct authority
        $authority = null;
        // there is a rendering difference between a null authority
        // (http:foo-bar) and an empty string authority
        // (http:///foo-bar).
        if (!is_null($this->host)) {
            $authority = '';
            if (!is_null($this->userinfo)) {
                $authority .= $this->userinfo . '@';
            }
            $authority .= $this->host;
            if (!is_null($this->port)) {
                $authority .= ':' . $this->port;
            }
        }

        // Reconstruct the result
        // One might wonder about parsing quirks from browsers after
        // this reconstruction.  Unfortunately, parsing behavior depends
        // on what *scheme* was employed (file:///foo is handled *very*
        // differently than http:///foo), so unfortunately we have to
        // defer to the schemes to do the right thing.
        $result = '';
        if (!is_null($this->scheme)) {
            $result .= $this->scheme . ':';
        }
        if (!is_null($authority)) {
            $result .= '//' . $authority;
        }
        $result .= $this->path;
        if (!is_null($this->query)) {
            $result .= '?' . $this->query;
        }
        if (!is_null($this->fragment)) {
            $result .= '#' . $this->fragment;
        }

        return $result;
    }
public function toString()
    {
        // reconstruct authority
        $authority = null;
        // there is a rendering difference between a null authority
        // (http:foo-bar) and an empty string authority
        // (http:///foo-bar).
        if (!is_null($this->host)) {
            $authority = '';
            if (!is_null($this->userinfo)) {
                $authority .= $this->userinfo . '@';
            }
            $authority .= $this->host;
            if (!is_null($this->port)) {
                $authority .= ':' . $this->port;
            }
        }

        // Reconstruct the result
        // One might wonder about parsing quirks from browsers after
        // this reconstruction.  Unfortunately, parsing behavior depends
        // on what *scheme* was employed (file:///foo is handled *very*
        // differently than http:///foo), so unfortunately we have to
        // defer to the schemes to do the right thing.
        $result = '';
        if (!is_null($this->scheme)) {
            $result .= $this->scheme . ':';
        }
        if (!is_null($authority)) {
            $result .= '//' . $authority;
        }
        $result .= $this->path;
        if (!is_null($this->query)) {
            $result .= '?' . $this->query;
        }
        if (!is_null($this->fragment)) {
            $result .= '#' . $this->fragment;
        }

        return $result;
    }
public function toString ( ) { // reconstruct authority
 $ authority = null ; // there is a rendering difference between a null authority
 // (http:foo-bar) and an empty string authority
 // (http:///foo-bar).
 if ( ! is_null ( $ this -> host ) ) { $ authority = '' ; if ( ! is_null ( $ this -> userinfo ) ) { $ authority .= $ this -> userinfo . '@' ; } $ authority .= $ this -> host ; if ( ! is_null ( $ this -> port ) ) { $ authority .= ':' . $ this -> port ; } } // Reconstruct the result
 // One might wonder about parsing quirks from browsers after
 // this reconstruction.  Unfortunately, parsing behavior depends
 // on what *scheme* was employed (file:///foo is handled *very*
 // differently than http:///foo), so unfortunately we have to
 // defer to the schemes to do the right thing.
 $ result = '' ; if ( ! is_null ( $ this -> scheme ) ) { $ result .= $ this -> scheme . ':' ; } if ( ! is_null ( $ authority ) ) { $ result .= '//' . $ authority ; } $ result .= $ this -> path ; if ( ! is_null ( $ this -> query ) ) { $ result .= '?' . $ this -> query ; } if ( ! is_null ( $ this -> fragment ) ) { $ result .= '#' . $ this -> fragment ; } return $ result ; }
Convert URI back to string
@return string URI appropriate for output
Convert URI back to string