PHP验证URL

时间:2014-04-22 12:14:36

标签: php regex validation curl

我知道这个问题之前已被多次询问,但似乎没有一个选项对我有用(包括正则表达式和php的filter_var)。我正在寻找一种方法来确保URL在继续之前是有效的可能性,下面是有效URL的示例

google.com
www.google.com
http://www.google.com
https://www.google.com
http://google.com
https://google.com
domain-site.com
google.net
google.ca
google.email
IPs (ex. 198.XX.XXX.XXX)

以下是无效网址

test
http://test
https://test

以下是我试图获得上述结果的链接/内容:

PHP regex for url validation, filter_var is too permisive

filter_var($url_new, FILTER_VALIDATE_URL)
preg_match('#^((https?)://(?:([a-z0-9-.]+:[a-z0-9-.]+)@)?([a-z0-9-.]+)(?::([0-9]+))?)(?:/|$)((?:[^?/]*/)*)([^?]*)(?:\?([^\#]*))?(?:\#.*)?$#i', $toLoad, $tmp)

我知道我可以判断一个域是否存在,这可能是最简单的选择,但它也很慢,我更喜欢一个正则表达式解决方案,我可以初步检查域的有效性。

感谢任何帮助!

0 个答案:

没有答案