热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

php如何查看本机ip的简单介绍

导读:本篇文章编程笔记来给大家介绍有关php如何查看本机ip的相关内容,希望对大家有所帮助,一起来看看吧。本文目录一览:1、PHP如何获取用户的真实IP?2、PHP怎么获取本地IP啊 在线求助3、p

导读:本篇文章编程笔记来给大家介绍有关php如何查看本机ip的相关内容,希望对大家有所帮助,一起来看看吧。

本文目录一览:


  • 1、PHP如何获取用户的真实IP?


  • 2、PHP怎么获取本地IP啊 在线求助


  • 3、php获取本机真实IP地址实例代码


  • 4、如何使用php获取本机IP地址


  • 5、php 在本机怎样获得ip地址

PHP如何获取用户的真实IP?

php获取用户真实ip的方法:

方法1:

//获取REMOTE_ADDR属性,直接可以得到ip

$ip = $_SERVER["REMOTE_ADDR"];

echo $ip;

方法2:

//从Server中获取HTTP_VIA,如果获取到就用HTTP_X_FORWARDED_FOR的值替换,如果获取不到就取REMOTE_ADDR的值。

$user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] :

$_SERVER["REMOTE_ADDR"];

$user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"];

echo $user_IP;

方法3:

function getRealIp()

{

$ip=false; //初始化ip为false

if(!empty($_SERVER["HTTP_CLIENT_IP"])){ //如果HTTP_CLIENT_IP不为空

$ip = $_SERVER["HTTP_CLIENT_IP"]; //获取HTTP_CLIENT_IP的值

}

if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { //如果HTTP_X_FORWARDED_FOR不为空

$ips = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);

//把HTTP_X_FORWARDED_FOR的值用,分割后存放数组ips

if ($ip) { array_unshift($ips, $ip); $ip = FALSE; }//遍历处理

for ($i = 0; $i count($ips); $i++) {

if (!eregi ("^(10│172.16│192.168).", $ips[$i])) {

$ip = $ips[$i]; //获得真实ip

break;

}

}

}

return ($ip ? $ip : $_SERVER['REMOTE_ADDR']);

}

echo getRealIp();

PHP怎么获取本地IP啊 在线求助

?php

function GetIP()

{

  if(!empty($_SERVER["HTTP_CLIENT_IP"]))

     $cip = $_SERVER["HTTP_CLIENT_IP"];

  else if(!empty($_SERVER["HTTP_X_FORWARDED_FOR"]))

     $cip = $_SERVER["HTTP_X_FORWARDED_FOR"];

  else if(!empty($_SERVER["REMOTE_ADDR"]))

     $cip = $_SERVER["REMOTE_ADDR"];

  else

     $cip = "无法获取!";

  return $cip;

}

echo "br";

error_reporting (E_ERROR | E_WARNING | E_PARSE);

if($HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"]) 

{

    $ip = $HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"];  

}elseif($HTTP_SERVER_VARS["HTTP_CLIENT_IP"]){                                              

    $ip = $HTTP_SERVER_VARS["HTTP_CLIENT_IP"];

}elseif ($HTTP_SERVER_VARS["REMOTE_ADDR"]){                                              

    $ip = $HTTP_SERVER_VARS["REMOTE_ADDR"];         

}elseif (getenv("HTTP_X_FORWARDED_FOR")){                                              

    $ip = getenv("HTTP_X_FORWARDED_FOR");   

}elseif (getenv("HTTP_CLIENT_IP")){                                              

    $ip = getenv("HTTP_CLIENT_IP");         

}elseif (getenv("REMOTE_ADDR")){                                              

    $ip = getenv("REMOTE_ADDR");                    

}else{                                              

    $ip = "Unknown";                             

}                                              

echo "你的IP地址是:".$ip."br";                            

$iipp = $_SERVER["REMOTE_ADDR"];

echo $iipp;

echo "br";

$user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"];

$user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"];

echo $user_IP."br";

function get_real_ip()

{

    $ip=false;

    if(!empty($_SERVER["HTTP_CLIENT_IP"])) {

        $ip = $_SERVER["HTTP_CLIENT_IP"];

    }

    if(!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){

        $ips = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);

        if ($ip){

            array_unshift($ips, $ip); $ip = FALSE;

        }

        for ($i = 0; $i  count($ips); $i++){

            if (!eregi ("^(10|172\.16|192\.168)\.", $ips[$i])){

                $ip = $ips[$i];

                break;

            }

        }

    }

    return ($ip ? $ip : $_SERVER['REMOTE_ADDR']);

}

echo get_real_ip();

echo "br";

if(getenv('HTTP_CLIENT_IP')) {

    $onlineip = getenv('HTTP_CLIENT_IP');

}elseif(getenv('HTTP_X_FORWARDED_FOR')) {

    $onlineip = getenv('HTTP_X_FORWARDED_FOR');

}elseif(getenv('REMOTE_ADDR')) {

    $onlineip = getenv('REMOTE_ADDR');

}else{

    $onlineip = $HTTP_SERVER_VARS['REMOTE_ADDR'];

}

echo $onlineip;

echo "br";

//获得外网IP

$ch = curl_init('');

    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

    $a  = curl_exec($ch);

    preg_match('/\[(.*)\]/', $a, $ip);

    echo '您现在的IP是: ' , $ip[1] , "\n";

?

php获取本机真实IP地址实例代码

本文实例为大家分享了php获取本机真实IP地址实例代码,供大家参考。

主要是获取操作系统为win2000/xp、win7的本机IP真实地址,和获取操作系统为linux类型的本机IP真实地址,具体内容如下

function

getLocalIP()

{

$preg

=

"/\A((([0-9]?[0-9])|(1[0-9]{2})|(2[0-4][0-9])|(25[0-5]))\.){3}(([0-9]?[0-9])|(1[0-9]{2})|(2[0-4][0-9])|(25[0-5]))\Z/";

//获取操作系统为win2000/xp、win7的本机IP真实地址

exec("ipconfig",

$out,

$stats);

if

(!empty($out))

{

foreach

($out

AS

$row)

{

if

(strstr($row,

"IP")

strstr($row,

":")

!strstr($row,

"IPv6"))

{

$tmpIp

=

explode(":",

$row);

if

(preg_match($preg,

trim($tmpIp[1])))

{

return

trim($tmpIp[1]);

}

}

}

}

//获取操作系统为linux类型的本机IP真实地址

exec("ifconfig",

$out,

$stats);

if

(!empty($out))

{

if

(isset($out[1])

strstr($out[1],

'addr:'))

{

$tmpArray

=

explode(":",

$out[1]);

$tmpIp

=

explode("

",

$tmpArray[1]);

if

(preg_match($preg,

trim($tmpIp[0])))

{

return

trim($tmpIp[0]);

}

}

}

return

'127.0.0.1';

}

以上就是本文的全部内容,希望对大家的学习有所帮助。

如何使用php获取本机IP地址

function ip() {

if(getenv('HTTP_CLIENT_IP') strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) {

$ip = getenv('HTTP_CLIENT_IP');

} elseif(getenv('HTTP_X_FORWARDED_FOR') strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) {

$ip = getenv('HTTP_X_FORWARDED_FOR');

} elseif(getenv('REMOTE_ADDR') strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) {

$ip = getenv('REMOTE_ADDR');

} elseif(isset($_SERVER['REMOTE_ADDR']) $_SERVER['REMOTE_ADDR'] strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) {

$ip = $_SERVER['REMOTE_ADDR'];

}

return preg_match ( '/[\d\.]{7,15}/', $ip, $matches ) ? $matches [0] : '';

}

以上函数取自phpcms的获取ip方法

php 在本机怎样获得ip地址

?php

function getIp()

{

$IPaddress='';

if (isset($_SERVER)){

if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])){

$IPaddress = $_SERVER["HTTP_X_FORWARDED_FOR"];

} else if (isset($_SERVER["HTTP_CLIENT_IP"])) {

$IPaddress = $_SERVER["HTTP_CLIENT_IP"];

} else {

$IPaddress = $_SERVER["REMOTE_ADDR"];

}

} else {

if (getenv("HTTP_X_FORWARDED_FOR")){

$IPaddress = getenv("HTTP_X_FORWARDED_FOR");

} else if (getenv("HTTP_CLIENT_IP")) {

$IPaddress = getenv("HTTP_CLIENT_IP");

} else {

$IPaddress = getenv("REMOTE_ADDR");

}

}

return $IPaddress;

}

echo getIp();//就可以输出用户的IP地址。

?

结语:以上就是编程笔记为大家整理的关于php如何查看本机ip的相关内容解答汇总了,希望对您有所帮助!如果解决了您的问题欢迎分享给更多关注此问题的朋友喔~


推荐阅读
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 本文详细介绍了PHP中与URL处理相关的三个函数:http_build_query、parse_str和查询字符串的解析。通过示例和语法说明,讲解了这些函数的使用方法和作用,帮助读者更好地理解和应用。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • 使用圣杯布局模式实现网站首页的内容布局
    本文介绍了使用圣杯布局模式实现网站首页的内容布局的方法,包括HTML部分代码和实例。同时还提供了公司新闻、最新产品、关于我们、联系我们等页面的布局示例。商品展示区包括了车里子和农家生态土鸡蛋等产品的价格信息。 ... [详细]
  • Ihaveaworkfolderdirectory.我有一个工作文件夹目录。holderDir.glob(*)>holder[ProjectOne, ... [详细]
  • 本文介绍了5个基本Linux命令行工具的现代化替代品,包括du、top和ncdu。这些替代品在功能上进行了改进,提高了可用性,并且适用于现代化系统。其中,ncdu是du的替代品,它提供了与du类似的结果,但在一个基于curses的交互式界面中,重点关注占用磁盘空间较多的目录。 ... [详细]
  • 本文介绍了iOS开发中检测和解决内存泄漏的方法,包括静态分析、使用instruments检查内存泄漏以及代码测试等。同时还介绍了最能挣钱的行业,包括互联网行业、娱乐行业、教育行业、智能行业和老年服务行业,并提供了选行业的技巧。 ... [详细]
  • docker安装到基本使用
    记录docker概念,安装及入门日常使用Docker安装查看官方文档,在"Debian上安装Docker",其他平台在"这里查 ... [详细]
  • Python正则表达式学习记录及常用方法
    本文记录了学习Python正则表达式的过程,介绍了re模块的常用方法re.search,并解释了rawstring的作用。正则表达式是一种方便检查字符串匹配模式的工具,通过本文的学习可以掌握Python中使用正则表达式的基本方法。 ... [详细]
  • 进入配置文件目录:[rootlinuxidcresin-4.0.]#cdusrlocalresinconf查看都有哪些配置文件:[rootlinuxid ... [详细]
  • php7 curl_init(),php7.3curl_init获取301、302跳转后的数据
    最近在做一个蜘蛛项目,发现在抓取数据时,有时会碰到301的页面,原本写的curl_init函数php7-远程获取api接口或网页内容&#x ... [详细]
  • PHPCURL获取cookies模拟登录的方法_php实例:要提取google搜索的部分数据,发现google对于软件抓取它的数据屏蔽的厉害,以前伪造下USER-AGENT就可以抓 ... [详细]
  • 数据结构与算法:回溯法之全排列
    题源:46.全排列初次接触回溯法真的好难,debug了半天才了解到了其中的具体原理过程,接下来我引用weiwei哥的讲解和我自己的一些理解, ... [详细]
  • linux下编译安装lnmp
    2019独角兽企业重金招聘Python工程师标准#######################安装依赖#####################安装必要的包:y ... [详细]
author-avatar
UJXo小妖春日望美
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有