【发布时间】:2017-10-05 07:41:09
【问题描述】:
示例域:http://мппм.рф
domain转换成ASCII后变成:Xn--l1aaia.xn--p1ai
但我现有的有效域的 PHP 函数返回 false。
验证域的现有功能
function ValidateDomain($domain)
{
if(!preg_match("/^([-a-z0-9]{2,100})\.([a-z\.]{2,24})$/i", $domain))
{
return false;
}
return $domain;
}
我尝试了以下一种来验证域
if( !preg_match('/^(http|https|ftp):\/\/([A-Z0-9][A-Z0-9_-]*(?:\.[A-Z0-9][A-Z0-9_-]*)+):?(\d+)?\/?/i', $domain) )
【问题讨论】:
-
用一个本身已经关闭并且答案很奇怪的问题来关闭一个问题并不是很好。我为 Lawrence Cherone 的行为道歉。但他赢得了关闭你的问题的权利。
标签: php regex validation