Algorithm for generating the ip/country table

This commit is contained in:
Dennis Eichhorn 2016-07-21 14:41:38 +02:00
parent df6f6202bb
commit cfe15807af

19
ipGeoLocationBuilder.php Normal file
View File

@ -0,0 +1,19 @@
<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
$fh = fopen('GeoIPCountryWhois.csv', 'r');
$fo = fopen('output.csv', 'w');
function ip2int(string $ip) : float {
$split = explode('.', $ip);
return $split[0] * (256 ** 3) + $split[1] * (256 ** 2) + $split[2] * (256 ** 1) + $split[3];
}
while (($data = fgetcsv($fh, 150, ",")) !== FALSE) {
fputcsv($fo, [ip2int($data[0]), ip2int($data[1]), $data[4]]);
}
fclose($fo);
fclose($fh);