有 5 种方法可获取 php 中的内网 ip:使用 gethostbyname() 函数使用 $_server[‘server_addr’] 变量使用 exec() 函数使用 socket_create() 和 socket_connect() 函数使用 ifconfig 命令
如何获取 PHP 中的内网 IP
获取 PHP 中的内网 IP 有多种方法,以下是最常见和最有效的方法:
1. 使用 gethostbyname() 函数
$ip = gethostbyname('localhost');
登录后复制
2. 使用 $_SERVER[‘SERVER_ADDR’]
此变量存储了服务器的内网 IP 地址。
$ip = $_SERVER['SERVER_ADDR'];
登录后复制
3. 使用 exec() 函数
$ip = exec('hostname -I');
登录后复制
4. 使用 socket_create() 和 socket_connect() 函数
$socket = socket_create(AF_INET, SOCK_DGRAM, 0); socket_connect($socket, '8.8.8.8', 53); $ip = socket_getsockname($socket); socket_close($socket);
登录后复制
5. 使用 ifconfig 命令
$ip = shell_exec('ifconfig | grep -Eo 'inet (addr:)?([0-9]*\.){3}[0-9]*' | grep -Eo '[0-9]*\.){3}[0-9]*'');
登录后复制
注意:
- 上述方法中,$ip 变量将包含服务器的内网 IP 地址。
- 并非所有方法在所有操作系统和服务器配置上都可用。
- 始终检查方法的可用性并处理可能的错误。
以上就是php如何获取内网ip的详细内容,更多请关注叮当号网其它相关文章!
文章来自互联网,只做分享使用。发布者:pansz,转转请注明出处:https://www.dingdanghao.com/article/679163.html