API地址:
https://api.mxooo.cn/ip_pic/
首页代码:
<?php
header("Content-type: image/JPEG");
// header("Content-type: text/html; charset=utf-8");
include 'function.php';
$im = imagecreatefromjpeg("bg.jpg");
// 如果携带自己的图片
// if(!empty($_REQUEST['bg'])&&preg_match('/.*(.png|.jpg|.jpeg|.gif)$/',$_REQUEST['bg'])=='1'){
// $im = imagecreatefromjpeg($_REQUEST['bg']);
// }
$ip = real_ip();
$weekarray=array("日","一","二","三","四","五","六"); //先定义一个数组
//$wangzhi=$_SERVER['HTTP_REFERER'];这里获取当前网址
$url='https://api.mxooo.cn/ip/?ip='.$ip;
$datssa = @file_get_contents($url);
$data = json_decode($datssa, true);
// 地区
$country = $data['site']['country'];
$region = $data['site']['region'];
// 天气
$weather = $data['city']['weather'];
$temperature = $data['city']['temperature'];
//定义颜色
$black = ImageColorAllocate($im, 0,0,0);//定义黑色的值
// 如果要修改字体颜色
$red = ImageColorAllocate($im, 220,220,220);//偏白色
$font = 'sjxh.ttf';//加载字体
//输出
imagettftext($im, 16, 0, 10, 40, $red, $font,'欢迎您,来自【'.$country.'-'.$region.'】的朋友');
imagettftext($im, 16, 0, 10, 72, $red, $font, '今天是 '.date('Y年n月j日').' 星期'.$weekarray[date("w")].' '.$weather);//当前时间添加到图片
imagettftext($im, 16, 0, 10, 104, $red, $font,'您的IP地址是:('.$ip.')');//ip
imagettftext($im, 16, 0, 10, 140, $red, $font,'您使用的是'.$os.'操作系统 '.$temperature.'℃');
imagettftext($im, 16, 0, 10, 175, $red, $font,'您使用的是'.$bro.'浏览器');
imagettftext($im, 14, 0, 10, 200, $black, $font,$get);
ImageGif($im);
ImageDestroy($im);
使用说明:
不需要携带任何参数
原本打算写自定义背景(用户传入一张自己的背景图URL)和自定义文字颜色(自己输入颜色代码)的,后面想想算了,浪费资源,而且大部分不懂怎么操作,目前就弄一个放在这里,以后API站点搭建起来再说
这里我使用的IP是自己封装的IP查询业务,之后会单独写一篇文章介绍一下的。
目前就暂时这样吧!
状态码说明:
无任何返回值,不会出现任何错误。
注意:国外IP地址访问可能无法生成完整的图片,因为国外IP查出来的数据不完整。
演示图:
最后说一下,当前判断浏览器的正则表达式不够多,若出现部分不是谷歌浏览器的显示Chrome,那就是内核使用的是Chrome,如果要纠正的朋友欢迎留言给我,我会一一补充上去,毕竟我安装的浏览器就那么几个,没有一一测试。
如何反馈给我:
浏览器打开网址:https://api.mxooo.cn/ip_pic/ceshi.php
之后复制出现的内容,在本文评论留给我就行了,我会根据user信息添加对应的判断。
目前已经添加的浏览器有:EDGE、IE、火狐、CHROME、QQ浏览器、夸克浏览器、苹果浏览器,其他的暂时没有添加。
欢迎大家给我补充。
正文结束