正規表現の必要はありません:
function getEndPath($url, $base) {
return substr($url, strlen($base));
}
また、レベルを指定してURLパスの最後の部分を返すより一般的な解決策は次のとおりです。
/**
* Get last n-level part(s) of url.
*
* @param string $url the url
* @param int $level the last n links to return, with 1 returning the filename
* @param string $delimiter the url delimiter
* @return string the last n levels of the url path
*/
function getPath($url, $level, $delimiter = "/") {
$pieces = explode($delimiter, $url);
return implode($delimiter, array_slice($pieces, count($pieces) - $level));
}