首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >PHP如何获取系统本端IP

PHP如何获取系统本端IP
EN

Stack Overflow用户
提问于 2010-07-10 20:28:14
回答 17查看 246K关注 0票数 105

我需要获取计算机的本地IP,如192。*....这在PHP中是可能的吗?

我需要运行脚本的系统的IP地址,但我不需要外部IP,我需要他的本地网卡地址。

EN

回答 17

Stack Overflow用户

发布于 2013-11-06 02:37:21

从CLI

PHP < 5.3.0

$localIP = getHostByName(php_uname('n'));

PHP >= 5.3.0

$localIP = getHostByName(getHostName());

票数 120
EN

Stack Overflow用户

发布于 2010-07-10 20:30:47

$_SERVER['SERVER_ADDR']
票数 62
EN

Stack Overflow用户

发布于 2012-09-10 10:20:50

这是一个旧帖子,但请使用以下内容:

function getLocalIp()
{ return gethostbyname(trim(`hostname`)); }

例如:

die( getLocalIp() );

如果是在另一个站点找到的,请不要删除trim命令,否则将获得计算机名称。

BACKTICKS (特殊引号):它之所以有效,是因为PHP将尝试将那些“特殊引号”(反引号)之间的任何内容作为shell命令运行,并返回结果输出。

gethostbyname(trim(`hostname`));

与做以下事情非常相似(但效率更高):

$exec = exec("hostname"); //the "hostname" is a valid command in both windows and linux
$hostname = trim($exec); //remove any spaces before and after
$ip = gethostbyname($hostname); //resolves the hostname using local hosts resolver or DNS
票数 33
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3219178

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档