2011-12-21 66 views
0

我使用parse_url形成以下一出:pregmatch的URL驗證

<?php 
$url = 'http://www.wine-searcher.com/merchant/26127'; 

echo parse_url($url, PHP_URL_PATH); 
?> 

輸出/merchant/26127

我必須將模式與preg_match匹配。我有一個循環,我想匹配所有形式爲'/ merchant/number'的網址。

示例中的url應該匹配。

回答

2
<?php 
$url = 'http://www.wine-searcher.com/merchant/26127'; 

$queryStr = parse_url($url, PHP_URL_PATH); 
var_dump(preg_match('|/merchant/\d+$|', $queryStr) == 1); 

應該這樣做

+0

你或許應該加上字符串的開頭:''^錨爲好。否則,這將錯誤地匹配:http://www.wine-searcher.com/other/path/merchant/26127'否則+1。 – ridgerunner 2011-12-21 17:17:45