为什么filter_var()
接受并验证此网址 http://http://www.google.com
?
$website = "http://http://www.google.com";
echo filter_var($website, FILTER_VALIDATE_URL); // This outputs the value of $website
我认为这是错误的。任何解决方案或修复此问题?
phpinfo()
答案 0 :(得分:2)
好像你在PHP中发现了一个错误。 PHP手册指出FILTER_VALIDATE_URL根据http://www.faqs.org/rfcs/rfc2396.html验证uris
如果您阅读规范,PHP显然无法按照指南正确验证。具体来说,在第3节(URI语法组件)中,定义了方案(在您的情况下为http)可能只存在一次,并且位于uri中唯一的冒号之前。
报告此错误找到它的好工作!