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

相关推荐
我是场7 分钟前
我的NPI项目之-Touch的EE特性
android·arm开发
天空之城--8 分钟前
Android一周动态:AI编程、Compose与车载生态新信号
android·flutter
福兮说1 小时前
IP 地址转整数的七个坑:192.168.1.1 算出负数、127.1 也是合法地址、存进 INT 直接溢出
javascript·网络·网络协议·tcp/ip·mysql·golang
恋猫de小郭1 小时前
Dart 4.0 要彻底移除 dart:mirrors,Augmentations 应该要来了
android·前端·flutter
洋不写bug3 小时前
网络编程(二)TCP回显服务器与客户端通信详解
服务器·网络·tcp/ip·tcp·网络通信·javaee·回显服务器
Carson带你学Android3 小时前
Gemini 4 Argon 发布:对 Android 开发者意味着什么?
android·ai编程
事圆则缓4 小时前
Kotlin Flow、StateFlow、SharedFlow 全解析:冷流、热流与 Android 状态管理
android·kotlin·php
应用市场4 小时前
把旧 Pixel 变成相册备份中转站(上):Mac 到安卓的照片传输工具设计——流式上传、sha256 校验、adb forward 与 Bonjour
android·macos·adb·kotlin·swift
汤米粥4 小时前
后端开发主流技术方案
java·python·golang·php·nodejs·后端开发
洋不写bug4 小时前
网络原理(一)应用层协议、传输层UDP/TCP报文格式解析
网络·tcp/ip·udp·tcp·应用层·javaee·传输层