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

相关推荐
大模型玩家七七9 小时前
效果评估:如何判断一个祝福 AI 是否“走心”
android·java·开发语言·网络·人工智能·batch
Aurora4199 小时前
Android事件分发逻辑--针对事件分发相关函数的讲解
android
似霰10 小时前
Android 日志系统4——logd 写日志过程分析一
android
China_Yanhy11 小时前
入职 Web3 运维日记 · 第 12 日:拥堵的跨链桥 —— 消失的 Gas 与“守护者”脚本
运维·web3·php
专注VB编程开发20年11 小时前
PLC协议:Modbus.Device(NModbus4)和手动 Socket.BeginConnect (APM异步编程模型)对比
网络·网络协议·tcp/ip·plc
IPDEEP全球代理11 小时前
TikTok多账号运营?使用静态IP还是动态IP合适?
大数据·网络协议·tcp/ip
youyoulg11 小时前
利用Android Studio编译Android上可直接执行的二进制
android·ide·android studio
闽农11 小时前
Android ANR 调用栈溯源
android·anr
似霰11 小时前
Android 日志系统7——Android 平台日志丢失问题分析
android·log