MXUrlParser is capable of parsing a complete URL and extract some parts of it like the URL parts (using php parse_url() function) and some domain name parts (using Mozilla public suffix list).
Available parts are (Assuming URL is https://dev.api.example.co.uk/1/2/3?key=val#anchor):
scheme:httpshost:dev.api.example.co.ukpath:/1/2/3query:key=valfragment:anchorsubdomain:devdomain:api.exampletld:co.uk
- PHP >=
5.3
There are several ways to download MxUrlParser-PHP:
- Install with composer (
"max13/url-parser": "dev-master") - Clone the github repository with
git clone <repo> [<dest>] - Download the zip file on github directly
- Try to find another one by yourself :/
Then place it where you want (readable location, in order to load it).
Let's say your URL is: dev.api.example.co.uk/1/2/3?key=val#anchor
You can parse it with the MX\UrlParser\UrlParser class:
<?php
use MX\UrlParser\UrlParser;
$p_url = new UrlParser('dev.api.example.co.uk/1/2/3?key=val#anchor');
/*
$p_url->scheme; // === null
$p_url->host; // == 'dev.api.example.co.uk'
$p_url->subdomain; // == 'dev'
$p_url->tld; // == 'co.uk'
*/
?>
That's it, as simple as this...!