validate 方法中 url校验的正则表达式bug

浏览:1937 发布日期:2014/07/25
3.2.2 - 普通 - 未处理
ThinkPHP/Library/Think/Model.class.php
'url' => '/^http(s?):\/\/(?:[A-za-z0-9-]+\.)+[A-za-z]{2,4}(?:[\/\?#][\/=\?%\-&~`@[\]\':+!\.#\w]*)?$/',

这一句正则有bug, 未匹配url中有端口的情况。
正确应该是:
'url' => '/^http(s?):\/\/(?:[A-za-z0-9-]+\.)+[A-za-z]{2,4}(:\d+)?(?:[\/\?#][\/=\?%\-&~`@[\]\':+!\.#\w]*)?$/',
评论(
后面还有条评论,点击查看>>