need the last part of the url
http://example.com then the last part is nothing if it is http://example.com/i then last part is i if it is http://example.com/i/am/fil
This is a simple example:
<?php
$url = "http://example.com/i/am/file.php";
$keys = parse_url($url); // parse the url
$path = explode("/", $keys['path']); // splitting the path
$last = end($path); // get the value of the last element
?>
I hope this help you ;)
There is a function called parse_url().
For those of you using a CMS like WordPress or Magento that add a trailing slash, there is an easy addition to Vasil's solution:
<?php
$url = "http://example.com/i/am/file.php";
$keys = parse_url($url); // parse the url
$path = explode("/", $keys['path']); // splitting the path
$last = end($path); // get the value of the last element
$last = prev($path); // get the next to last element
?>
You can even just use a simple Request URI call like this:
$request_path = $_SERVER['REQUEST_URI'];
$path = explode("/", $request_path); // splitting the path
$last = end($path);
$last = prev($path);
Note that Vasil's example won't work if for some reason you have a trailing slash, as for instance some CMS systems will put at the end (Magento, I'm looking at you...)
Well, it'll work, but the end of the path is empty. Something to be aware of.
$url = 'http://example.com/i/am/file.php';
$url = rtrim($url, '/');
preg_match('/([^\/]*)$/', $url, $match);
var_dump($match);
Test