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格式,需要自行转换格式

相关推荐
CYY953 小时前
Compose 入门篇
android·kotlin
杉氧6 小时前
Compose 时代的 MVI 架构:如何用单向数据流驱动复杂 UI?
android·架构·android jetpack
杉氧6 小时前
Modifier 的艺术:为什么链式调用的顺序决定了UI 的生命周期?
android·架构·android jetpack
李斯维7 小时前
腾讯 XLog 日志框架 Android 端接入
android·android studio·android jetpack
黄林晴7 小时前
Kotlin Toolchain 0.11 发布:Amper 正式更名,统一 kotlin 命令
android·kotlin
雨白9 小时前
C语言基础快速入门与指针初探
android
Exploring10 小时前
避坑指南:升级 AGP 8.0+ 导致第三方 SDK 编译崩溃的完美解决方案
android
石山岭1 天前
自己动手写了一个 Android 虚拟定位 App:GPSSimulate 技术实
android·前端
杉氧1 天前
副作用 (Side Effects) 全攻略:如何像大师一样掌控 Composable 的生命周期?
android·架构·android jetpack
Kapaseker1 天前
Kotlin Toolchain 0.11 发布:主要是把 Amper 干没了
android·kotlin