Php implements the method of obtaining the province and city where the ip address is located based on the ip address.
How to obtain the geographic location (province, city, etc.) based on the existing IP Address
Function GetIpLookup ($ ip = '') {if (empty ($ ip) {return 'enter ip address';} $ res = @ file_get_contents ('HTTP: // response? Format = js & ip = '. $ ip); if (empty ($ res) {return false;} $ jsonMatches = array (); preg_match ('#\{. +? \}# ', $ Res, $ jsonMatches); if (! Isset ($ jsonMatches [0]) {return false;} $ json = json_decode ($ jsonMatches [0], true); if (isset ($ json ['ret ']) & $ json ['ret '] = 1) {$ json ['IP'] = $ ip; unset ($ json ['ret']);} else {return false;} return $ json;} $ ipInfos = GetIpLookup ('2017. 125.114.144 '); // baidu.com IP address var_dump ($ ipInfos );
Release a simplified version
function getIpAddress(){ $ipContent = file_get_contents("http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js"); $jsonData = explode("=",$ipContent); $jsonAddress = substr($jsonData[1], 0, -1); return $jsonAddress; } $ip_info=json_decode(getIpAddress());
PHP implements city switching or redirection Based on IP addresses
Here, the problem is actually quite simple. It can be done with simple js. Section C is as follows:
// Jump to the specified Page Based on the IP address. js gets the city
Var city = '<? Echo ipCity ($ xp_UserIp);?> '; // Jump to the specified page according to the IP address of all cities
If (city. indexOf ("Shanghai")> = 0 ){
Window. location. href = "http://shanghai.demo.com /";}
Place the-segment code and the C-segment code above in the header and end of the B-segment Code respectively, and then add the following code on the page to jump:
<Script src = "/ipcity/ipaddress. php" type = "text/javascript" language = "javascript"> </script>
Is refreshing the page as expected?
The above is all the content of this article. I hope you will like it.