好得很程序员自学网
  • 首页
  • 后端语言
    • C#
    • PHP
    • Python
    • java
    • Golang
    • ASP.NET
  • 前端开发
    • Angular
    • react框架
    • LayUi开发
    • javascript
    • HTML与HTML5
    • CSS与CSS3
    • jQuery
    • Bootstrap
    • NodeJS
    • Vue与小程序技术
    • Photoshop
  • 数据库技术
    • MSSQL
    • MYSQL
    • Redis
    • MongoDB
    • Oracle
    • PostgreSQL
    • Sqlite
    • 数据库基础
    • 数据库排错
  • CMS系统
    • HDHCMS
    • WordPress
    • Dedecms
    • PhpCms
    • 帝国CMS
    • ThinkPHP
    • Discuz
    • ZBlog
    • ECSHOP
  • 高手进阶
    • Android技术
    • 正则表达式
    • 数据结构与算法
  • 系统运维
    • Windows
    • apache
    • 服务器排错
    • 网站安全
    • nginx
    • linux系统
    • MacOS
  • 学习教程
    • 前端脚本教程
    • HTML与CSS 教程
    • 脚本语言教程
    • 数据库教程
    • 应用系统教程
  • 新技术
  • 编程导航
    • 区块链
    • IT资讯
    • 设计灵感
    • 建站资源
    • 开发团队
    • 程序社区
    • 图标图库
    • 图形动效
    • IDE环境
    • 在线工具
    • 调试测试
    • Node开发
    • 游戏框架
    • CSS库
    • Jquery插件
    • Js插件
    • Web框架
    • 移动端框架
    • 模块管理
    • 开发社区
    • 在线课堂
    • 框架类库
    • 项目托管
    • 云服务

当前位置:首页>后端语言>PHP
<tfoot draggable='sEl'></tfoot>

php获取ip段 php获取ip地址的函数

很多站长朋友们都不太清楚php获取ip段,今天小编就来给大家整理php获取ip段,希望对各位有所帮助,具体内容如下:

本文目录一览: 1、 PHP怎么获取当前电脑的IP? 2、 php获取客户端IP地址的几种方法 3、 使用PHP怎样获得客户端IP地址? 4、 php获取ip 5、 如何使用php获取本机IP地址 6、 php获取本机真实IP地址实例代码 PHP怎么获取当前电脑的IP?

本文所述php实例可以完成获取局域网所有用户的电脑IP和主机名、及mac地址的功能,对于php程序设计人员有一定的参考借鉴价值。完整代码如下:

<?php

$bIp = gethostbyname($_ENV['COMPUTERNAME']); //获取本机的局域网IP

echo "本机IP:",$bIp,"\n";

echo "本机主机名:",gethostbyaddr($bIp),"\n\n\n"; //gethostbyaddr 函数可以根据局域网IP获取主机名

//默认网关IP

list($ipd1,$ipd2,$ipd3) = explode('.',$bIp);

$mask = $ipd1 . "." . $ipd2 . "." . $ipd3 ;

exec('arp -a',$aIp); //获取局域网中的其他IP

foreach( $aIp as $ipv) {

if(strpos($ipv,'接口') !== false) {//一下显示的IP是否是当前局域网中的 而不是其他的类型 可以在cmd下试一下命令

$bool = false;

preg_match('/(?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))/',$ipv,$arr);

if(strcmp($arr[0],$bIp) == 0) {

$bool = true;

}

} else {

if($bool) {

$str = preg_replace('/\s+/', '|', $ipv);

$sArr = explode('|',$str);

if($sArr[1] == 'Internet' || empty($sArr[1])) {

continue;

}

//去除默认网关

if(strcmp($mask . ".1", $sArr[1]) == 0) {

continue;

}

//去除同网关下255的IP

if(strcmp($mask . ".255", $sArr[1]) == 0) {

continue;

}

//去除组播IP

list($cIp) = explode('.', $sArr[1]);

if($cIp >= 224 $cIp <= 239) {

continue;

}

echo "IP地址:|",$sArr[1],"|\n";

echo "MAC地址:",$sArr[2],"\n";

echo "主机名:",gethostbyaddr($sArr[1]),"\n";

echo "\n\n";

}

}

}

php获取客户端IP地址的几种方法

//php获取ip的算法

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 ; 

?>

使用PHP怎样获得客户端IP地址?

function getIp()

{

if ($_SERVER["HTTP_CLIENT_IP"] strcasecmp($_SERVER["HTTP_CLIENT_IP"], "unknown")) {

$ip = $_SERVER["HTTP_CLIENT_IP"];

} else {

if ($_SERVER["HTTP_X_FORWARDED_FOR"] strcasecmp($_SERVER["HTTP_X_FORWARDED_FOR"], "unknown")) {

$ip = $_SERVER["HTTP_X_FORWARDED_FOR"];

} else {

if ($_SERVER["REMOTE_ADDR"] strcasecmp($_SERVER["REMOTE_ADDR"], "unknown")) {

$ip = $_SERVER["REMOTE_ADDR"];

} else {

if (isset ($_SERVER['REMOTE_ADDR']) $_SERVER['REMOTE_ADDR'] strcasecmp($_SERVER['REMOTE_ADDR'],

"unknown")

) {

$ip = $_SERVER['REMOTE_ADDR'];

} else {

$ip = "unknown";

}

}

}

}

return ($ip);

}

echo getIp();

php获取ip

$user_IP = $_SERVER["REMOTE_ADDR"];//获取访问者IP

$file_name=date('Y-m-d').'.txt'//以当前的日期建立txt文件

$file=fopen($file_name,"a+");//如果存在该文件就打开,如果不存在就创建

fwrite($file,$user_IP.'--'.date('Y-m-d H:i:s'));//将访问者IP及当前时刻写到文件最后

fclose($file);//关闭文件

//个人觉得txt文件不会很大所以一般无需一天一删除,因为在txt里删除一些行比起数据库要麻烦一些。

如何使用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获取本机真实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段的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。

查看更多关于php获取ip段 php获取ip地址的函数的详细内容...

声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did207684
更新时间:2023-05-03   阅读:81次

上一篇: php登录逻辑判断 php判断用户名是否正确

下一篇:php文件开始插入 php新建文件

相关资讯

最新资料更新

  • 1.php框架开发教程 php系统开发框架
  • 2.搭建分站源码php 建立分站怎么建
  • 3.输出图片php 输出图片英文
  • 4.jq读取php变量 php读取html内容
  • 5.php下载csv乱码 php下载文件名乱码
  • 6.php的token请求 php简单的token验证
  • 7.php带协议跳转 php跳转函数
  • 8.jq调用php数据 php100 jquery教程
  • 9.php的特点有. 简述什么是php?php的主要特点有哪些?
  • 10.php读取pdf内容 php读取文本文件
  • 11.php教程全局交流 phpunit教程
  • 12.phpurl链接解析 php解析url
  • 13.php学费多少兄弟连 php教程兄弟连
  • 14.php下载表格 php下载功能
  • 15.php版本怎么更新 php版本升级
  • 16.php登录保护机制 php保持登录状态
  • 17.php正则获取图片 php使用正则表达式
  • 18.php英国时区代码 英国时区缩写
  • 19.php如何页面静态化 php实现页面静态化
  • 20.php的项目开发 php项目开发案例整合

CopyRight:2016-2025好得很程序员自学网 备案ICP:湘ICP备09009000号-16 http://haodehen.cn
本站资讯不构成任何建议,仅限于个人分享,参考须谨慎!
本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。

网站内容来源于网络分享,如有侵权发邮箱到:kenbest@126.com,收到邮件我们会即时下线处理。
网站框架支持:HDHCMS   51LA统计 百度统计
Copyright © 2018-2025 「好得很程序员自学网」
[ SiteMap ]