php实现图形显示Ip地址的代码及注释

使用图形显示Ip,文件 sunip.php

代码如下:

<?php
header("Content-type: image/gif");
$im = imagecreate(130,15);
$background_color = ImageColorAllocate ($im, 255, 255, 255);
unset($ip);
if($_SERVER['HTTP_CLIENT_IP']){
$ip=$_SERVER['HTTP_CLIENT_IP'];
} else if($_SERVER['HTTP_X_FORWARDED_FOR']){
$ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
} else{
$ip=$_SERVER['REMOTE_ADDR'];
} // www.jb51.net
$col = imagecolorallocate($im, 0, 51, 102);
imagestring($im, 3, 5, 1, $ip , $col);
imagegif($im);
imagedestroy($im);
?>

1. <?php

2. header("Content-type: image/gif");
第二行 声明浏览器标头 输出为GIF图形
3. $im = imagecreate(130,15);
建立一个图形 imagecreate(130,15)括号内130,15分别代表宽度和高度
4. $background_color = ImageColorAllocate ($im, 255, 255, 255);
设置背景颜色 imagecolorallocate 为一幅图片分配颜色 ($im, 255, 255, 255)im代表前面提到的新建图形 后面的3个255则代表颜色表ffffff的10进制字符
5. unset($ip);
无用
6.if($_SERVER['HTTP_CLIENT_IP']){
$ip=$_SERVER['HTTP_CLIENT_IP'];
} else if($_SERVER['HTTP_X_FORWARDED_FOR']){
$ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
} else{
$ip=$_SERVER['REMOTE_ADDR'];
}
如果$_SERVER['HTTP_CLIENT_IP']可以使用则使用$_SERVER['HTTP_CLIENT_IP']下面类似 为判断 此段是为了兼容多种服务器设置
7. $col = imagecolorallocate($im, 0, 51, 102);
定义文字颜色
8. imagestring($im, 3, 5, 1, $ip , $col);
将获取到的IP画到新建的画布上 imagestring($im, 3, 5, 1, $ip , $col); 分别代表imagestring(图形表示,字符尺寸1-5,X坐标,Y坐标,输出的IP,颜色)
9. imagegif($im);
输出GIF图形
10. imagedestroy($im);
释放内存
11. ?>
程序结束

(0)

相关推荐

  • 一个图形显示IP的PHP程序代码

    先看代码sunip.php 复制代码 代码如下: <?php  header("Content-type: image/gif");  $im = imagecreate(130,15);  $background_color = ImageColorAllocate ($im, 255, 255, 255);   unset($ip);  if($_SERVER['HTTP_CLIENT_IP']){  $ip=$_SERVER['HTTP_CLIENT_IP'];  } el

  • php实现图形显示Ip地址的代码及注释

    使用图形显示Ip,文件 sunip.php 复制代码 代码如下: <?php header("Content-type: image/gif"); $im = imagecreate(130,15); $background_color = ImageColorAllocate ($im, 255, 255, 255); unset($ip); if($_SERVER['HTTP_CLIENT_IP']){ $ip=$_SERVER['HTTP_CLIENT_IP']; } el

  • 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/

  • JSP 获取真实IP地址的代码

    但是在通过了 Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了.如果使用了反向代理软件,用 request.getRemoteAddr()方法获取的IP地址是:127.0.0.1或 192.168.1.110,而并不是客户端的真实IP. 经过代理以后,由于在客户端和服务之间增加了中间层,因此服务器无法直接拿到客户端的 IP,服务器端应用也无法直接通过转发请求的地址返回给客户端.但是在转发请求的HTTP头信息中,增加了X-FORWARDED-FOR信息.用以跟踪原有的客户端

  • asp实现检查ip地址是否为内网或者私有ip地址的代码分享

    asp检查ip地址是否为私有/内网ip地址源代码. 内网/私有IP地址网段如下,还有127开头的回环地址: 10.0.0.0-10.255.255.255 172.16.0.0-172.31.255.255 192.168.0.0-192.168.255.255 实现代码: <% function IpToNumber(ip)'IP地址转为数字 arr=split(ip,".") IpToNumber=256*256*256*clng(arr(0))+256*256*clng(a

  • 通过命令行方式批量设置保留IP地址的代码

    前段时间看到一个提问关于如何批量设置DHCP保留地址的贴子,后来经作实验测试,现将解决方法分享给大家,供互相学习讨论. 首先我们知道DHCP添加保留地址的方法有两种.一种在作用域的保留地址添加:另一种方法通过命令行批量添加. 下面介绍的是如何通过命令行添加保留地址的方法:(此方法在2003R2及2008R2上测试可用) 复制代码 代码如下: dhcp server 172.16.2.10 scope 172.16.2.0 add reservedip172.16.2.100 00055de2e5

  • php获取手机端的号码以及ip地址实例代码

    我们在用PHP写移动端程序的时候,有的时候需要直接获取手机号码以及对应的IP地址内容,在此我们给大家整理了详细完整的代码内容,需要的朋友们测试下. <?php /** * Created by PhpStorm. * User: liubao * Date: 2018/8/30 * Time: 16:21 */ /** * 类名: mobile * 描述: 手机信息类 * 其他: 偶然 编写 */ class mobile { /** * 函数名称: getPhoneNumber * 函数功能:

  • 在InstallShield中通过主机名获取IP地址的代码

    // 文 件 名:setup.rul // 脚本功能:通过主机名获得TCP/IP地址 // 编写日期:2003-07-15 // 使用方法:调用函数 fGetIpAddress(szHost, szIPAdress) // written by Jaron ,2002-07-15  // 原出处:江都资讯网论坛 http://www.jiangdu.net/bbs;;  // 转载请注明出处和保留此版权信息  // 欢迎使用SiteManager网站管理系统 http://sitemanager

  • Linux下Python获取IP地址的代码

    <lnmp一键安装包>中需要获取ip地址,有2种情况:如果服务器只有私网地址没有公网地址,这个时候获取的IP(即私网地址)不能用来判断服务器的位置,于是取其网关地址用来判断服务器在国内还是国外(脚本为了使国内用户快速下载,yum源自动设置成163,这个情况就需要获取网关地址):如果服务器有公网地址,这时获取的IP地址可用来直接判断服务器地理位置. 获取服务器IP,如果有公网地址就取公网地址,没有公网地址就取私网网址 下面是之前我用shell来获取本地IP脚本: IP=`ifconfig | g

  • shell通过正则匹配ip地址实例代码

    前言 在运维场景下,我们经常需要在服务器上用正则表达式来匹配IP地址. shell和其它编程语言一样,也可以使用正则分组捕获,不过不能使用 $1或\1这样的形式来捕获分组,可以通过数组${BASH_REMATCH}来获得,如${BASH_REMATCH[1]},${BASH_REMATCH[N]} IP分成5大类: A类地址 ⑴ 第1字节为网络地址,其它3个字节为主机地址. ⑵ 范围:1.0.0.1-126.155.255.254 ⑶ 私有地址和保留地址: ① 10.X.X.X是私有地址(只能在

  • asp下比较全面的获取IP地址的代码

    最简单的用以下语句: ip=request.ServerVariables("REMOTE_ADDR")  response.Write(ip) 但这种方法对代理服务器上网的就不准了,故比较全面的是用下面的方法: 复制代码 代码如下: <%Private Function getIP()   Dim strIPAddr   If Request.ServerVariables("HTTP_X_FORWARDED_FOR") = "" OR 

随机推荐