我有一个与以下(变化的)结构的链接:
http://website.com/category/product/abc12345
类别和产品名称的长度各不相同,但id (abc12345)始终位于最后一个"/“之后,长度约为6-8个字符。
我尝试用以下代码提取链接:
preg_split('/[/]/', $val, $arr);
$narr[] = end($arr);使用val作为链接,arr作为数组,结果应该被粘贴进去。narr是我想稍后保存到文件中的数组,所以它在这里并不重要。不幸的是,当我尝试这种方式时,我的结果总是空的。
发布于 2013-03-15 23:33:22
我会选择:
$urlParts = parse_url($myUrl);
$parts = explode('/', $urlParts['path']);
$productId = array_pop($parts);这样,在锚点(#content)或查询参数(?id=123)方面就没有问题了
发布于 2013-03-15 23:32:45
在以下情况下:
querystrings/params
尝试以下正则表达式:
preg_match('/\/([\w]+)\/?$/', $val, $arr);
$product = $arr[1];发布于 2013-03-15 23:35:17
我会使用preg_match
if (preg_match('#.*/(.*)#', $val, $match)) {
$result = $match[1];
}您还可以使用像strrpos和substr这样简单的东西
$result = substr($val, strrpos($val, '/') + 1);https://stackoverflow.com/questions/15436170
复制相似问题