parse_url
  (PHP 4, PHP 5)
parse_url — Parse a URL and return its components
  
 
  Description
  
   mixed parse_url
    ( 
string $url
   [, 
int $component
  ] )
 
  
  
   This function is not meant to validate
   the given URL, it only breaks it up into the above listed parts. Partial
   URLs are also accepted, parse_url() tries its best to
   parse them correctly.
  
  
 
  Parameters
  
   
    - 
     url
     
- 
      
       The URL to parse
       
    - 
     component
     
- 
      
       Specify one of PHP_URL_SCHEME,
       PHP_URL_HOST, PHP_URL_PORT,
       PHP_URL_USER, PHP_URL_PASS,
       PHP_URL_PATH, PHP_URL_QUERY
       or PHP_URL_FRAGMENT to retrieve just a specific
       URL component as a string.
       
 
 
  Return Values
  
   On seriously malformed URLs, parse_url() may return
   FALSE and emit a E_WARNING. Otherwise an associative
   array is returned, whose components may be (at least one):
   
    - 
     
      scheme - e.g. http
     
    
- 
     
      host 
     
    
- 
     
      port
     
    
- 
     
      user
     
    
- 
     
      pass
     
    
- 
     
      path
     
    
- 
     
      query - after the question mark ?
     
    
- 
     
      fragment - after the hashmark #
     
    
   If the component
 parameter is specified a
   string is returned instead of an array.
  
  
 
 
  Examples
  
   
    Example #1 A parse_url() example
    
<?php
$url = 'http://username:password@hostname/path?arg=value#anchor';
print_r(parse_url($url));
echo parse_url($url, PHP_URL_PATH);
?>
     
    The above example will output:
Array
(
    [scheme] => http
    [host] => hostname
    [user] => username
    [pass] => password
    [path] => /path
    [query] => arg=value
    [fragment] => anchor
)
/path
 
  
  
 
  Notes
  Note: 
   
    This function doesn't work with relative URLs.
   
  
  Note: 
   
    This function is intended specifically for the purpose of parsing URLs
    and not URIs. However, to comply with PHP's backwards compatibility
    requirements it makes an exception for the file:// scheme where tripple
    slashes (file:///...) are allowed. For any other scheme this is invalid.