将国家名称添加到IP记录器PHP脚本

将国家名称添加到IP记录器PHP脚本,php,ip,Php,Ip,我有这个ip logger php脚本,它运行良好,但我需要在每个日志中添加国家名称。。我该怎么做 <?php $ip = $_SERVER['REMOTE_ADDR']; $browser = $_SERVER['HTTP_USER_AGENT']; $dateTime = date('Y/m/d G:i:s'); $file = "visitors.html"; $file = fopen($file, "a"); $data = "<pre><b>User

我有这个ip logger php脚本,它运行良好,但我需要在每个日志中添加国家名称。。我该怎么做

<?php

$ip = $_SERVER['REMOTE_ADDR'];
$browser = $_SERVER['HTTP_USER_AGENT'];
$dateTime = date('Y/m/d G:i:s');
$file = "visitors.html";
$file = fopen($file, "a");
$data = "<pre><b>User IP</b>: $ip <b> Browser</b>: $browser <br>on Time : $dateTime <br></pre>";
fwrite($file, $data);
fclose($file);
echo "<h1>Hi :)</h1>";
?> 

在这里,您的代码将如下所示:



PHP不提供国家/地区信息。这是你需要使用某种API的东西。有各种各样的web API可以为你做到这一点。看到这一点:如果答案有帮助,请接受它,以便其他人知道问题已经解决。
<?php

$ip = "8.8.8.8";

$ip_info = json_decode(file_get_contents("http://ip-api.com/json/$ip"), true);

echo "<pre>";
echo print_r($ip_info, true);
echo "</pre>";

?>
Array
(
    [as] => AS15169 Google LLC
    [city] => Mountain View
    [country] => United States
    [countryCode] => US
    [isp] => Google
    [lat] => 37.4229
    [lon] => -122.085
    [org] => Google
    [query] => 8.8.8.8
    [region] => CA
    [regionName] => California
    [status] => success
    [timezone] => America/Los_Angeles
    [zip] => 
)
<?php
$ip = $_SERVER['REMOTE_ADDR'];
$ip_info = json_decode(file_get_contents("http://ip-api.com/json/$ip"), true);
$country = $ip_info['country'];
$browser = $_SERVER['HTTP_USER_AGENT'];
$dateTime = date('Y/m/d G:i:s');
$file = "visitors.html";
$file = fopen($file, "a");
$data = "<pre><b>User IP</b>: $ip <b> Browser</b>: $browser <br>on Time : $dateTime <br>from Country : $country</pre>";
fwrite($file, $data);
fclose($file);
echo "<h1>Hi :)</h1>";
?>