PHP获取局域网ip(192.168)

有时候,程序中,需要获取本机内网ip的情况,经过各种资料查找,最终确定一下代码:

php 复制代码
//获取内网ip
    function getLocalIP() {
        exec("ipconfig /all",$arr);
        $res = mb_convert_encoding($arr, 'UTF-8', 'GBK');
        $ip = '';
        foreach ($res as $item) {
            if (strpos($item, 'DHCP 服务器') !== false) {
                $item = str_replace(' . ', '', $item);
                $index = strpos($item, '192');
                $ip = substr($item, $index);
            }
        }
        return $ip;
    }

注意事项:

1、禁用函数中,需要去除exec

2、linux系统可能是其他命令,需要将"ipconfig /all"替换成对应的命令行

3、返回结果,可能不带"DHCP 服务器"关键字,需要自行通过结果修改

4、正常命令行的结果不是utf8格式,需要自行转换格式

相关推荐
Johnstons9 小时前
网页加载到一半卡住?视频看到关键处花屏?可能是丢包在作祟
开发语言·php·音视频·弱网测试·网络损伤
杉氧9 小时前
Kotlin 协程深度解析①:内核解密——揭秘 suspend 挂起函数的灵魂
android·kotlin
以身入局9 小时前
ViewStub 讲解
android
故渊at9 小时前
第六板块:Android 安全与权限体系 | 第二十篇:应用签名、权限机制与 PackageManagerService 的安全校验
android·安全·权限体系·应用签名
朝星9 小时前
Android开发[11]:启动优化
android·kotlin
AI玫瑰助手9 小时前
Python函数:函数的文档字符串(docstring)编写
android·java·python
JohnnyDeng949 小时前
【Android】Android渲染机制:Choreographer与VSYNC深度解析
android·性能优化·kotlin·jetpack
yangzhenzephyr9 小时前
TCP流量控制与拥塞控制
网络·tcp/ip
恋猫de小郭9 小时前
Flutter 又为 AI 时代添砖加瓦:全新 ComponentLibrary 提议
android·前端·flutter