Class Url
Parses and generates URLs based on URL parts. In favor of performance, URL parts are not validated.
Methods summary
-
public staticfactory ( string $url )Factory method to create a new URL from a URL string
-
public staticbuildUrl ( array $parts )Build a URL from parse_url parts. The generated URL will be a relative URL if a scheme or host are not provided.
-
public__construct ( string $scheme, string $host, string $username = null, string $password = null, int $port = null, string $path = null, Guzzle\Http\QueryString $query = null, string $fragment = null )Create a new URL from URL parts
-
public__clone ( )Clone the URL
-
public__toString ( )Returns the URL as a URL string
-
publicgetParts ( )Get the parts of the URL as an array
-
publicsetHost ( string $host )Set the host of the request.
-
publicgetHost ( )Get the host part of the URL
-
publicsetScheme ( string $scheme )Set the scheme part of the URL (http, https, ftp, etc)
-
publicgetScheme ( )Get the scheme part of the URL
-
publicsetPort ( int $port )Set the port part of the URL
-
publicgetPort ( )Get the port part of the URl. Will return the default port for a given scheme if no port has been set.
-
publicsetPath ( array|string $path )Set the path part of the URL
-
publicnormalizePath ( )Normalize the URL so that double slashes and relative paths are removed
-
publicaddPath ( string $relativePath )Add a relative path to the currently set path.
-
publicgetPath ( )Get the path part of the URL
-
publicgetPathSegments ( )Get the path segments of the URL as an array
-
publicsetPassword ( string $password )Set the password part of the URL
-
publicgetPassword ( )Get the password part of the URL
-
publicsetUsername ( string $username )Set the username part of the URL
-
publicgetUsername ( )Get the username part of the URl
-
publicgetQuery ( )Get the query part of the URL as a QueryString object
-
publicsetQuery ( QueryString|string|array $query )Set the query part of the URL
-
publicgetFragment ( )Get the fragment part of the URL
-
publicsetFragment ( string $fragment )Set the fragment part of the URL
-
publicisAbsolute ( )Check if this is an absolute URL
-
publiccombine ( string $url, bool $strictRfc3986 = false )Combine the URL with another URL. Follows the rules specific in RFC 3986 section 5.4.
Methods detail
Factory method to create a new URL from a URL string
Parameters
- $url
string
$url Full URL used to create a Url object
Returns
Throws
Build a URL from parse_url parts. The generated URL will be a relative URL if a scheme or host are not provided.
Parameters
- $parts
array
$parts Array of parse_url parts
Returns
string
public
__construct( string $scheme, string $host, string $username = null, string $password = null, integer $port = null, string $path = null, Guzzle\Http\QueryString $query = null, string $fragment = null )
Create a new URL from URL parts
Parameters
- $scheme
string
$scheme Scheme of the URL- $host
string
$host Host of the URL- $username
string
$username Username of the URL- $password
string
$password Password of the URL- $port
integer
$port Port of the URL- $path
string
$path Path of the URL- $query
Guzzle\Http\QueryString|array|string
$query Query string of the URL- $fragment
string
$fragment Fragment of the URL
Clone the URL
Returns the URL as a URL string
Returns
stringGet the parts of the URL as an array
Returns
arraySet the host of the request.
Parameters
- $host
string
$host Host to set (e.g. www.yahoo.com, yahoo.com)
Returns
Get the host part of the URL
Returns
stringSet the scheme part of the URL (http, https, ftp, etc)
Parameters
- $scheme
string
$scheme Scheme to set
Returns
Get the scheme part of the URL
Returns
stringGet the port part of the URl. Will return the default port for a given scheme if no port has been set.
Returns
integer|nullSet the path part of the URL
Parameters
- $path
array|string
$path Path string or array of path segments
Returns
Add a relative path to the currently set path.
Parameters
- $relativePath
string
$relativePath Relative path to add
Returns
Get the path part of the URL
Returns
stringGet the path segments of the URL as an array
Returns
arraySet the password part of the URL
Parameters
- $password
string
$password Password to set
Returns
Get the password part of the URL
Returns
null|stringSet the username part of the URL
Parameters
- $username
string
$username Username to set
Returns
Get the username part of the URl
Returns
null|stringSet the query part of the URL
Parameters
- $query
Guzzle\Http\QueryString|string|array
$query Query to set
Returns
Get the fragment part of the URL
Returns
null|stringSet the fragment part of the URL
Parameters
- $fragment
string
$fragment Fragment to set
Returns
Check if this is an absolute URL
Returns
booleanCombine the URL with another URL. Follows the rules specific in RFC 3986 section 5.4.
Parameters
- $url
string
$url Relative URL to combine with- $strictRfc3986
boolean
$strictRfc3986 Set to true to use strict RFC 3986 compliance when merging paths. When first released, Guzzle used an incorrect algorithm for combining relative URL paths. In order to not break users, we introduced this flag to allow the merging of URLs based on strict RFC 3986 section 5.4.1. This means that "http://a.com/foo/baz" merged with "bar" would become "http://a.com/foo/bar". When this value is set to false, it would become "http://a.com/foo/baz/bar".
Returns
Throws
Link
Magic methods summary
Properties summary
protected
mixed
|
$scheme | |
protected
mixed
|
$host | |
protected
mixed
|
$port | |
protected
mixed
|
$username | |
protected
mixed
|
$password | |
protected
string
|
$path | |
protected
mixed
|
$fragment | |
protected
|
$query |
#
Query part of the URL |