This article mainly introduces the php method for obtaining the root domain name. The example summarizes common methods for obtaining the root domain name by php, which is a very practical technique, for more information about how to obtain the root domain name in php, see the examples in this article. The specific implementation method is as follows:
If you only get the domain name currently accessing your page, you only need to use the HTTP_HOST function in php. if you want to extract the url root domain name, you need regular expressions, let's take a look at several specific instances.
It is very easy to obtain the current domain name:
The code is as follows:
<? Php
// Obtain the current domain name:
Echo $ _ SERVER ['server _ name'];
// Obtain the source URL, that is, click the previous URL on this page.
Echo $ _ SERVER ["HTTP_REFERER"];
$ _ SERVER ['request _ URI ']; // Obtain the suffix of the current domain name
$ _ SERVER ['http _ host']; // Obtain the current domain name
Dirname (_ FILE _); // Obtain the physical path of the current FILE
Dirname (_ FILE _). "/../"; // Obtain the upper-level physical path of the current FILE
?>
Example 1
The code is as follows:
Function getUrlRoot ($ url ){
# Add the header and tail
$ Url = $ url ."/";
# Determining domain names
Preg_match ("/(\ w *):\/\/)? \ W *\.? ([\ W |-] * \. (com.cn | net.cn | gov.cn | org.cn | com | net | cn | org | asia | tel | mobi | me | TV | biz | cc | name | info ))
\\// ", $ Url, $ ohurl );
# Determining IP addresses
If ($ ohurl [3] = ''){
Preg_match ("/(\ d + \.) {3} \ d +) \ //", $ url, $ ohip );
Return $ ohip [1];
}
Return $ ohurl [3];
}
Example 2
The code is as follows:
/**
* Get the root domain name
* @ Param type $ domain name
* @ Return string returns the root domain name.
*/
Function GetUrlToDomain ($ domain ){
$ Re_domain = '';
$ Domain_postfix_cn_array = array ("com", "net", "org", "gov", "edu", "com.cn", "cn ");
$ Array_domain = explode (".", $ domain );
$ Array_num = count ($ array_domain)-1;
If ($ array_domain [$ array_num] = 'cn '){
If (in_array ($ array_domain [$ array_num-1], $ domain_postfix_cn_array )){
$ Re_domain = $ array_domain [$ array_num-2]. ".". $ array_domain [$ array_num-1]. ".". $ array_domain [$ array_num];
} Else {
$ Re_domain = $ array_domain [$ array_num-1]. ".". $ array_domain [$ array_num];
}
} Else {
$ Re_domain = $ array_domain [$ array_num-1]. ".". $ array_domain [$ array_num];
}
Return $ re_domain;
}
I hope this article will help you with php programming.