如何使用php解析url
我需要用php解析一个类似facebook的按钮的URL。我现在做的是:如何使用php解析url,php,parsing,url,Php,Parsing,Url,我需要用php解析一个类似facebook的按钮的URL。我现在做的是: <?php echo curPageURL(); ?> 但是我的文章有时有2到3页长,所以我想解析url而不需要页码,这样like按钮就可以用于文章的第一页。有时页码也不存在 我的url看起来像这样 末尾的2是表示第2页的页码。文章的第一页是这样的 如何在php中解析url以删除页码(如果存在) 因此,我只想在有页码的情况下解析它。您可以将正则表达式用于: 上面的正则表达式删除URI末尾出现的任何/
<?php
echo curPageURL();
?>
但是我的文章有时有2到3页长,所以我想解析url而不需要页码,这样like按钮就可以用于文章的第一页。有时页码也不存在
我的url看起来像这样
末尾的2是表示第2页的页码。文章的第一页是这样的
如何在php中解析url以删除页码(如果存在)
因此,我只想在有页码的情况下解析它。您可以将正则表达式用于: 上面的正则表达式删除URI末尾出现的任何
/
+数字
+(可选)/
。尝试使用:
preg_replace('/^(.+[a-zA-Z]\/)[\d]*\/?$/i', '\\1', $str);
$url='1!'http://www.mydomain.com/23/My-Article-Title/2/';
$url\u info=parse\u url($url);
$paths=(空($url\u info['path'])?数组():分解('/',修剪($url\u info['path'],'/'));
如果($len=count($paths))>0&&is_为数值($paths[$len-1]))
{
回声“;
打印(路径);
回声“;
}
?>
我确信给出的所有答案都是有效的,因为我对正则表达式了解得不够,不知道为什么其中一个会比其他任何一个更好。但这个答案是最简洁的,它似乎符合我的要求。所以我把它标记为答案。@webbpreg_replace('=/\d+/$=','/',$url)代码>
preg_replace('/^(.+[a-zA-Z]\/)[\d]*\/?$/i', '\\1', $str);
preg_replace('=\d+/$=', '', $url);
$url = 'http://www.mydomain.com/23/My-Article-Title/2/';
$url_info = parse_url($url);
$pathes = (empty($url_info['path']) ? array() : explode('/', trim($url_info['path'], '/')));
if (($len = count($pathes)) > 0 && is_numeric($pathes[$len-1]) )
{
echo "<pre>";
print_r($pathes);
echo "</pre>";
}
?>