网通客户端下载ip PHP获取客户端及服务器端IP的封装类

  本文实例讲述了php获取客户端及服务器端ip的封装类。分享给大家供大家参考,具体如下:

  客户端IP相关的变量:

  1. $_SERVER['REMOTE_ADDR']; 客户端IP,有可能是用户的IP,也有可能是代理的IP。

  2. $_SERVER['HTTP_CLIENT_IP']; 代理端的IP,可能存在,可伪造。

  3. $_SERVER['HTTP_X_FORWARDED_FOR']; 用户是在哪个IP使用的代理,可能存在,可以伪造。

  服务器端IP相关的变量:

  1. $_SERVER["SERVER_NAME"],需要使用函数gethostbyname()获得。这个变量无论在服务器端还是客户端均能正确显示。

  2. $_SERVER["SERVER_ADDR"],在服务器端测试:127.0.0.1(这个与httpd.conf中BindAddress的设置值相关)。在客户端测试结果正确。

  类如下:

  class getIP{

  function clientIP(){

  $cIP = getenv('REMOTE_ADDR');

  $cIP1 = getenv('HTTP_X_FORWARDED_FOR');

  $cIP2 = getenv('HTTP_CLIENT_IP');

  $cIP1 ? $cIP = $cIP1 : null;

  $cIP2 ? $cIP = $cIP2 : null;

  return $cIP;

  }

  function serverIP(){

  return gethostbyname($_SERVER["SERVER_NAME"]);

  }

  }

  $getIP = new getIP();

  $clientIp = getIP::clientIP();

  $serverIp = getIP::serverIP();

  echo 'Client IP is ',$clientIp,'
';

  echo 'Server IP is ',$serverIp,'
';

  更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP网络编程技巧总结》、《php curl用法总结》、《php socket用法总结》、《php正则表达式用法总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP数学运算技巧总结》、《php面向对象程序设计入门教程》、《PHP数据结构与算法教程》、《php程序设计算法总结》及《php常见数据库操作技巧汇总》

  希望本文所述对大家PHP程序设计有所帮助。

  以上就介绍了网通客户端下载ip PHP获取客户端及服务器端IP的封装类,包括了网通客户端下载ip方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

  php免费学习视频:立即学习

  踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!

您可能感兴趣的文章:

相关文章