从CSV文件中获取所有IP地址的国家/地区名称

问题描述:

我想从IP地址获取所有国家/地区名称。我有一个CSV文件,其中描述了所有的IP地址,我想一次获得所有的国家名称。任何有一个想法如何做到这一点?从CSV文件中获取所有IP地址的国家/地区名称

我使用下面的代码,但它仅适用于单个值。我如何为多个IP地址执行此操作?

<form method="post"> 
    <input type="text" name="ip" /> 
    <input type="submit" name="submit" value="Find" /> 
</form> 

<?php 

function countryCityFromIP($ipAddr) { 
    $url="http://api.ipinfodb.com/v3/ip-city/?key=5cfaab6c5af420b7b0f88d289571b990763e37b66761b2f053246f9db07ca913&ip=$ipAddr&format=json%22"; 
    $d = file_get_contents($url); 
    return json_decode($d , true); 
} 

if(isset($_REQUEST['submit'])){ 
    $ip=countryCityFromIP($_REQUEST['ip']); 
    print_r($ip); 
    echo $ip['countryName']; 
} 

?> 
+0

选中此http://*.com/questions/ 3650006 /获取国家的ip地址与php – Techidiot

+0

它只用于单个IP地址我想获得多个IP地址 – ritika

+0

C你应该发布一段代码吗?你还试过了什么? –

下面是更新后的代码

输入应该是逗号分隔的IP地址列表

<form method="post"> 
 
    <input type="text" name="ip" /> 
 
    <input type="submit" name="submit" value="Find" /> 
 
</form> 
 

 
<?php 
 

 
function countryCityFromIP($ipAddr) { 
 
    $url="http://api.ipinfodb.com/v3/ip-city/?key=5cfaab6c5af420b7b0f88d289571b990763e37b66761b2f053246f9db07ca913&ip=$ipAddr&format=json%22"; 
 
    $d = file_get_contents($url); 
 
    return json_decode($d , true); 
 
} 
 

 
if(isset($_REQUEST['submit'])){ 
 
    foreach(explode(',', $_REQUEST['ip']) as $ip) { 
 
     $ip = countryCityFromIP($ip[); 
 
     print_r($ip); 
 
     echo $ip['countryName']; 
 
    } 
 

 
} 
 

 
?>

+0

其不工作 – ritika

+0

看这段代码$ url = json_decode(file_get_contents(“http://api.ipinfodb.com/v3/ip-city/?key=2b3d7d0ad1a285279139487ce77f3f58d980eea9546b5ccc5d08f5ee62ce7471&ip=”。'124.40.244.19'。“&format = json” )); echo $ url-> countryName; – ritika

+0

在这段代码中,我想输入多个IP地址,所以请告诉我该怎么做。 – ritika