前言
想针对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) ?>
学无止境,谦卑而行.