thesmart/php-url

Create, manipulate, and output any URL easily. Convert between relative and absolute URLs. Map URLs to their canonical equivalent.

v0.1.0 2012-09-12 19:46 UTC

This package is not auto-updated.

Last update: 2024-04-27 12:22:57 UTC


README

Create, manipulate, and output any URL easily. Convert between relative and absolute URLs. Map URLs to their canonical equivalent.

Usage

###Construct a URL from a string

$url = new Url('http://example.com/');
echo (string)$url;
http://example.com/

###Mutate the URL in different ways

$url = new Url();
$url->setScheme('https://')->setHost('www.reddit.com')->setPath('/r/programming');
echo (string)$url;
https://www.reddit.com/r/programming

###Access the arguments from a URL

NOTE: automatically alphabetizes the arguments.

$url = new Url('http://example.com?x=0&a=1&b=2');
var_dump($url->getQuery());
var_dump($url->getQueryStr());
array(3) {
  ["a"]=>
  string(1) "1"
  ["b"]=>
  string(1) "2"
  ["x"]=>
  string(1) "0"
}
string(11) "a=1&b=2&x=0"

###Handles trailing-slash like you would expect

$url = new Url('http://example.com');
var_dump((string)$url);
$url = new Url('http://example.com/');
var_dump((string)$url);
$url = new Url('http://example.com');
$url->setPath('/');
var_dump((string)$url);
string(18) "http://example.com"
string(19) "http://example.com/"
string(19) "http://example.com/"