在下面的网址中,我想获得ProdId的价值。 URL格式将始终保持一致,参数名称也将保持一致,但值的长度可能会更改。它始终是数字。
http://www.example.com/page.php?ProdId=2683322&xpage=2
使用PHP获取它的最快方法(我将处理10,000的速度,这是一个问题)?
答案 0 :(得分:13)
PHP具有内置函数。一起使用parse_url()
和parse_str()
。
从php.net拼凑而成:
$url = 'http://www.example.com/page.php?ProdId=2683322&xpage=2';
// Parse the url into an array
$url_parts = parse_url($url);
// Parse the query portion of the url into an assoc. array
parse_str($url_parts['query'], $path_parts);
echo $path_parts['ProdId']; // 2683322
echo $path_parts['xpage']; // 2
答案 1 :(得分:6)
试试这个正则表达式:
^http://www\.example\.com/page\.php\?ProdId=(\d+)
答案 2 :(得分:2)
你不能使用$_GET['ProdId']
吗?
答案 3 :(得分:2)
尝试此功能:
/https?:\/{2}(?:w{3}\.)?[-.\w][^\.]+\.{2,}\/ProdId=\d+\&xpage=\d+/
答案 4 :(得分:0)
/^[^#?]*\?(?:[^#]*&)?ProdId=(\d+)(?:[#&]|$)/
同样的英文:
?
或#
之外的任何内容(这会将我们带到查询字符串或哈希部分的开头,以先到者为准)?
(如果只有哈希部分,则会取消比赛资格)&