php gets the local IP address php gets the remote IP address
Complete code:
-
- //
- echo $_SERVER['REMOTE_ADDR'];
-
- //Local IP address
- function get_local_ip() {
- $preg = "/A((([0-9]?[0 -9])|(1[0-9]{2})|(2[0-4][0-9])|(25[0-5])).){3}(([0- 9]?[0-9])|(1[0-9]{2})|(2[0-4][0-9])|(25[0-5]))Z/";
- //Get the real IP address of the machine whose operating system is win2000/xp or win7
- exec("ipconfig", $out, $stats);
- if (!emptyempty($out)) {
- foreach ($out AS $row ) {
- if (strstr($row, "IP") && strstr($row, ":") && !strstr($row, "IPv6")) {
- $tmpIp = explode(":", $row) ;
- if (preg_match($preg, trim($tmpIp[1]))) {
- return trim($tmpIp[1]);
- }
- }
- }
- }
- //Get the operating system of Linux type The real IP address of the machine
- exec("ifconfig", $out, $stats);
- if (!emptyempty($out)) {
- if (isset($out[1]) && strstr($out[1], ' addr:')) {
- $tmpArray = explode(":", $out[1]);
- $tmpIp = explode(" ", $tmpArray[1]);
- if (preg_match($preg, trim($ tmpIp[0]))) {
- return trim($tmpIp[0]);
- }
- }
- }
- return '127.0.0.1';
- }
Copy code
|