update
This commit is contained in:
@@ -2,7 +2,9 @@
|
||||
|
||||
namespace app\controller;
|
||||
|
||||
use App\model\Ip2locationDb11Model;
|
||||
use itbdw\Ip\IpLocation;
|
||||
use support\Db;
|
||||
use support\Request;
|
||||
|
||||
class Index
|
||||
@@ -21,4 +23,30 @@ class Index
|
||||
|
||||
return json(['ip' => $ip, 'location' => $location]);
|
||||
}
|
||||
|
||||
public function location(Request $request, $checkIp = null)
|
||||
{
|
||||
$ip = $request->getRealIp();
|
||||
|
||||
if ($checkIp) {
|
||||
$ip = gethostbyname($checkIp);
|
||||
}
|
||||
|
||||
$ipNum = ip2long($ip);
|
||||
|
||||
|
||||
$record = Ip2locationDb11Model::query()->where(
|
||||
'ip_from', '<=', $ipNum
|
||||
)->where(
|
||||
'ip_to', '>=', $ipNum
|
||||
)->first();
|
||||
|
||||
if ($record) {
|
||||
$record = $record->toArray();
|
||||
} else {
|
||||
$record = [];
|
||||
}
|
||||
|
||||
return json(['ip' => $ip, 'record' => $record]);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user