An implementation of a PSR-7 & PSR-17 conforming Uri library
Installation is simple using composer.
composer require kusabi/uri
Or simply add it to your composer.json
file
{
"require": {
"kusabi/uri": "^1.0"
}
}
The Uri class is a very basic wrapper around a Uri string.
use Kusabi\Uri\Uri;
// Instantiate a Uri instance
$uri = new Uri('https://user:pass@www.my-site.com:8080/users/22?filter=name#bottom');
// Fetch the properties of the Uri instance
echo $uri->getScheme();
echo $uri->getAuthority();
echo $uri->getUserInfo();
echo $uri->getHost();
echo $uri->getPort();
echo $uri->getPath();
echo $uri->getQuery();
echo $uri->getFragment();
The Uri factory can be used to create the Uri instance too.
use Kusabi\Uri\UriFactory;
// Instantiate a Uri instance
$factory = new UriFactory();
$uri = $factory->createUri('https://user:pass@www.my-site.com:8080/users/22?filter=name#bottom');
// Fetch the properties of the Uri instance
echo $uri->getScheme();
echo $uri->getAuthority();
echo $uri->getUserInfo();
echo $uri->getHost();
echo $uri->getPort();
echo $uri->getPath();
echo $uri->getQuery();
echo $uri->getFragment();