可能重复:
提取url 的最后部分
我有一个这样的网址:
http://www.domain.co.uk/product/SportingGoods/Cookware/1/B000YEU9NA/Coleman-Family-Cookset
我只想从"Coleman Family Cookset"的末尾提取产品名称
当我使用parse_url和print_r时,我会得到以下结果:
Array (
[scheme] => http
[host] => www.domain.co.uk
[path] => /product/SportingGoods/Cookware/1/B000YEU9NA/Coleman-Family-Cookset
)
然后我该如何修剪"科尔曼家庭烹饪"的结尾?
提前感谢
以上所有答案都有效,但都使用了不必要的数组和正则表达式,您需要最后一个/
的位置,这可以用strrpos()
获得,然后用substr()
:提取字符串
substr( $url, 0, strrpos( $url, '/'));
您可能需要在strrpos()
之后添加+/- 1
这是比使用preg_*
或explode
更有效的解决方案。
$url = 'http://www.domain.co.uk/product/SportingGoods/Cookware/1/B000YEU9NA/Coleman-Family-Cookset';
$url = explode('/', $url);
$last = array_pop($url);
echo $last;
您有路径变量(来自如上所示的数组)。使用以下内容:
$tobestripped=$<the array name>['path']; //<<-the entire path that is
$exploded=explode("/", $tobestripped);
$lastpart=array_pop($exploded);
希望这能有所帮助。
$url = rtrim($url, '/');
preg_match('/([^'/]*)$/', $url, $match);
var_dump($match);
测试