PHP怎么获取电脑本机IPV4地址?

qq_30441943 2016-07-28 05:07:11
我说的不是$_SERVER里面的SERVER_ADDR和REMOTE_ADDR,而是客户端电脑的IPV4地址,带有端口号的
...全文
478 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
mafei_it 2017-01-05
  • 打赏
  • 举报
回复
/** * 获取主机IPv4 */ function get_ipv4(){ if (isset($_ENV["HOSTNAME"])){ $MachineName = $_ENV["HOSTNAME"]; } else if(isset($_ENV["COMPUTERNAME"])){ $MachineName = $_ENV["COMPUTERNAME"]; }else{ $MachineName = ""; } return gethostbyname($MachineName); } echo get_ipv4();
affluseo 2016-08-04
  • 打赏
  • 举报
回复
例如:公司10台电脑,但是公网IP 只有一个,发送的请求都是经过路由器的,所以只有一个ip . 内网的ip 不可以获取吧?因为跟你服务器通讯的是路由器。并非真实的物理机。
qq_30441943 2016-08-03
  • 打赏
  • 举报
回复
引用 2 楼 q285481071 的回复:
function GetIP() { if(!empty($_SERVER["HTTP_CLIENT_IP"])){ $cip = $_SERVER["HTTP_CLIENT_IP"]; }elseif(!empty($_SERVER["HTTP_X_FORWARDED_FOR"])){ $cip = $_SERVER["HTTP_X_FORWARDED_FOR"]; }elseif(!empty($_SERVER["REMOTE_ADDR"])){ $cip = $_SERVER["REMOTE_ADDR"]; }else{ $cip = ''; } preg_match("/[\d\.]{7,15}/", $cip, $cips); $cip = isset($cips[0]) ? $cips[0] : 'unknown'; unset($cips); return $cip; } 楼主用这个函数试试
不行的,$_SERVER获取出来的IPV4是一个 比如一家公司有十台电脑,获取出来的IP全部是一个。
qq_30441943 2016-08-03
  • 打赏
  • 举报
回复
引用 1 楼 xw4501339 的回复:
$_SERVER['REMOTE_ADDR'] //当前用户 IP 。
$_SERVER不行的,比如一家公司有十台电脑,获取出来的IP全部是一个。
q285481071 2016-07-28
  • 打赏
  • 举报
回复
function GetIP() { if(!empty($_SERVER["HTTP_CLIENT_IP"])){ $cip = $_SERVER["HTTP_CLIENT_IP"]; }elseif(!empty($_SERVER["HTTP_X_FORWARDED_FOR"])){ $cip = $_SERVER["HTTP_X_FORWARDED_FOR"]; }elseif(!empty($_SERVER["REMOTE_ADDR"])){ $cip = $_SERVER["REMOTE_ADDR"]; }else{ $cip = ''; } preg_match("/[\d\.]{7,15}/", $cip, $cips); $cip = isset($cips[0]) ? $cips[0] : 'unknown'; unset($cips); return $cip; } 楼主用这个函数试试
xw4501339 2016-07-28
  • 打赏
  • 举报
回复
$_SERVER['REMOTE_ADDR'] //当前用户 IP 。

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧