Home > Backend Development > PHP Tutorial > 求php好手来帮忙,判断主机名最后一个字符为国家简称

求php好手来帮忙,判断主机名最后一个字符为国家简称

WBOY
Release: 2016-06-13 12:43:03
Original
990 people have browsed it

求php高手来帮忙,判断主机名最后一个字符为国家简称

本帖最后由 kwdpx 于 2013-07-05 19:05:08 编辑
$host = "www.abc.com";<br />
$splitresult=preg_split("/\./",$host); //用"."分割主机名<br />
//判断主机名最后一个字符为国家简称,若是,则输出后三个字段,若否,则输出后两个<br />
$countsplit=count($splitresult); //数组中最大元素数<br />
$pattern2='/af|aq|at|au|be|bg|br|ca|ch|cl|cn|de|eg|es|fi|fr|gr|hk|hu|ie|il|in|iq|ir|is|it|jp|kr|mx|nl|no|nz|pe|ph|pr|pt|ru|se|sg|th|tr|tw|uk|us|za/'; //国家简称<br />
if (preg_match($pattern2,$splitresult[$countsplit-1])){<br />
$matchesurl="".$splitresult[$countsplit-3].".".$splitresult[$countsplit-2].".".$splitresult[$countsplit-1];<br />
}else{<br />
$matchesurl="".$splitresult[$countsplit-2].".".$splitresult[$countsplit-1];<br />
}<br />
$matchesurl=ltrim("$matchesurl", ".");
Copy after login


当$host = "www.abc.com";以上代码可以正确得到abc.com

当$host = "www.abc.com.cn";以上代码也能正确得到abc.com.cn

但当$host = "www.abc.cn"; 时,以上代码不能正确得到abc.cn,而是错误的得到了www.abc.cn

所以想当域名中包含aero|biz|cc|co|com|coop|edu|gov|info|int|mil|museum|name|nato|net|org|tv的同时又包含'/af|aq|at|au|be|bg|br|ca|ch|cl|cn|de|eg|es|fi|fr|gr|hk|hu|ie|il|in|iq|ir|is|it|jp|kr|mx|nl|no|nz|pe|ph|pr|pt|ru|se|sg|th|tr|tw|uk|us|za/'; //国家简称这些的时候,输出三个字段,如www.abc.com.cn或www.abc.net.cn输出三个字段:abc.com.cn、abc.net.cn;

当域名中不包含com或net等时,只输出二个字段,如:www.abc.cn或www.abc.us则输出二个字段:abc.cn、abc.us;。

当然默认$host = "www.abc.com";这种还是要输出二个字段的,如:abc.com

也就是如何在以上原有代码中,加一个判断$pattern2='/af|aq|at|au|be|bg|br|ca|ch|cl|cn|de|eg|es|fi|fr|gr|hk|hu|ie|il|in|iq|ir|is|it|jp|kr|mx|nl|no|nz|pe|ph|pr|pt|ru|se|sg|th|tr|tw|uk|us|za/'; //国家简称
是否包含
aero|biz|cc|co|com|coop|edu|gov|info|int|mil|museum|name|nato|net|org|tv

以使以上代码判断更精准,请高手帮忙,谢!!
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template