检查添加的网址

时间:2014-03-06 16:02:25

标签: php url preg-match

我正在构建一个php系统,允许用户重新发送需要重新检查的发票,

我的问题是我需要为我的系统制作一个条件,所以它不能接受任何url期望的URL看起来像下面的例子

$url = http://mydomain.com/$id/invoice/$num

http://mydomain.com/murad/invoice/6589445564555

http://mydomain.com/ludmilla/invoice/9764564252

代码:

} elseif(preg_match("|^http(s)?://(www.)?mydomain.com/([a-z]+)/(.*)?$|i", $url)){
        $msg = '<div class="msg"><div class="error">'.$lang['er_01'].'</div></div>';

但它不起作用,我能知道如何让它正常工作吗?

1 个答案:

答案 0 :(得分:0)

AFAIK,你需要反转测试并改变一下正则表达式,试试这个:

} elseif( ! preg_match("|^http(s)?://(www.)?mydomain.com/([a-z]+)/invoice/(\d+)$|i", $url) ){
    $msg = '<div class="msg"><div class="error">'.$lang['er_01'].'</div></div>';