php获取本机真实IP地址实例代码

网络编程 2025-03-14 19:12www.168986.cn编程入门

PHP世界:获取本机真实IP地址的实例代码

亲爱的开发者们,你们好!今天我要和大家分享一段PHP代码,这段代码能够帮助我们获取本机的真实IP地址。无论你的操作系统是win2000/xp、win7还是linux,这段代码都能帮你轻松获取IP地址。

我们需要定义一个函数getLocalIP(),在这个函数中,我们会使用正则表达式和一些系统命令来获取IP地址。让我们一起看看代码吧。

```php

function getLocalIP() {

// 定义一个正则表达式,用于验证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/";

// 对于win2000/xp、win7系统,使用ipconfig命令获取IP地址

exec("ipconfig", $out, $stats);

if (!empty($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]);

}

}

}

}

// 对于linux系统,使用ifconfig命令获取IP地址

exec("ifconfig", $out, $stats);

if (!empty($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]);

}

}

}

// 如果没有获取到IP地址,默认返回本地回环地址127.0.0.1

return '127.0.0.1';

}

```

以上就是获取本机真实IP地址的PHP实例代码。希望这篇文章能够对大家的学习有所帮助,激发你对PHP编程的热情。如果你有任何疑问或者想要了解更多关于PHP的知识,欢迎和我一起交流。让我们一起在编程的世界里翱翔!

注意:以上代码仅适用于获取本机的IP地址,如果你需要获取远程用户的IP地址,可能需要结合服务器环境和HTTP请求进行处理。

上一篇:浅谈JS之iframe中的窗口 下一篇:没有了

Copyright © 2016-2025 www.168986.cn 狼蚁网络 版权所有 Power by