Typecho——为评论增加地址信息展示

简介: Typecho——为评论增加地址信息展示

前言

想针对EasyBe主题的评论,增加对应的IP地址信息展示;

内容

?> 找了搜狐、淘宝、ip.sb等一些api,最后选择了plyz.net,在functions.php中添加以下方法;

函数封装

/**
 * 留言IP
 *
 * @param int $ip ip地址
 */
function getIPInfo($ip) {
    $url =  "http://ip.plyz.net/ip.ashx?ip={$ip}";
    $data = curlRequest($url, 'GET');
    echo explode("|",$data)[1];
}
/**
 * 多种请求方法封装
 *
 * @param string   $url      请求地址
 * @param string   $method   请求方式
 * @param array    $header   请求头
 * @param array    $data     请求体
 *
 * @return mixed
 */
function curlRequest($url, $method = 'POST', $header = ["Content-type:application/json;charset=utf-8", "Accept:application/json"], $data = [])
{
    $method = strtoupper($method);
    $ch = curl_init();
    //curl_setopt($ch, CURLOPT_PROXY, '127.0.0.1:8888');
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, $url);
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
    if (!empty($data)) {
        curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    }
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $res = curl_exec($ch);
    curl_close($ch);
    return $res;
}

前端调用

在评论内容页,找个合适的位置调用即可;

<?php getIPInfo($comments->ip) ?>

学无止境,谦卑而行.

目录
相关文章
Threejs实现下雨,下雪,阴天,晴天,火焰
Threejs实现下雨,下雪,阴天,晴天,火焰
3329 0
Threejs实现下雨,下雪,阴天,晴天,火焰
|
Java Maven
SpringBoot用maven打出的jar只有几kb解决
SpringBoot用maven打出的jar只有几kb解决
1303 0
|
存储 NoSQL 关系型数据库
什么是列式存储,一文秒懂
云栖号资讯:【点击查看更多行业资讯】在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 从数据存储讲起 我们最先接触的数据库系统,大部分都是行存储系统。大学的时候学数据库,老师让我们将数据库想象成一张表格,每条数据记录就是一行数据,每行数据包含若干列。
什么是列式存储,一文秒懂
|
SQL Java 数据库连接
浅谈SSM框架理论相关知识_kaic
浅谈SSM框架理论相关知识_kaic
|
11月前
|
弹性计算 开发者
阿里云服务器配置选择推荐:个人用户、学生及企业用户选购经验分享
阿里云2025年优惠解析:新用户38元/年享轻量服务器,老用户99元/年用ECS;学生领300元券免费用云服务;企业199元/年购2核4G高配。配置灵活,续费同价,适合个人、学生及企业开发者。
|
Android开发 Python
自动养手机权重脚本,抖音看广告刷金币脚本插件, 抖音自动养号脚本app
采用uiautomator2实现Android设备控制,比纯ADB命令更稳定 随机化操作参数包括:观看时长
|
JSON Shell API
查手机号归属地免费API接口教程
本接口提供手机号码归属地查询功能,支持获取号段、归属地省份/城市、运营商、区号、邮编等信息。请求地址为 `https://cn.apihz.cn/api/ip/shouji.php`,支持 POST 或 GET 方式调用,需提供 `id`、`key` 和 `phone` 参数。返回包含归属地信息及运营商等数据,适用于手机号归属查询场景。
3455 6
|
关系型数据库 MySQL 数据库
解决Navicat报错:2013 - Lost connection to MySQL server during query
解决Navicat报错:2013 - Lost connection to MySQL server during query
4380 0
|
应用服务中间件 Apache nginx
宝塔占用80端口
宝塔占用80端口
|
存储 Python
终于,手把手教会 HR 实现 Python + Excel 「邮件自动化」发工资条了
终于,手把手教会 HR 实现 Python + Excel 「邮件自动化」发工资条了
644 0

热门文章

最新文章