برای پیدا کردن لوکیشن فیزیکی در زبان PHP میتوان از اسکریپت پایین استفاد کرد ، در این اسکریپت از سرویس geoplugin.net استفاده شده است ، با ارسال IP به این سرویس میتوان به اطلاعاتی راجع به موقعیت فیزیکی IP مانند کشور و شهر دسترسی پیدا کرد .
<?php
function getLocationInfoByIpAddress()
{
$http_client = @$_SERVER['HTTP_CLIENT_IP'];
$http_forward = @$_SERVER['HTTP_X_FORWARDED_FOR'];
$remote_addr = @$_SERVER['REMOTE_ADDR'];
$location_result = array('country_name' => '', 'city_name' => '');
if (filter_var($http_client, FILTER_VALIDATE_IP)) {
$user_ip = $http_client;
} elseif (filter_var($http_forward, FILTER_VALIDATE_IP)) {
$user_ip = $http_forward;
} else {
$user_ip = $remote_addr;
}
$ip_data = json_decode(file_get_contents("http://www.geoplugin.net/json.gp?ip=" . $user_ip));
if ($ip_data && $ip_data->geoplugin_countryName != null) {
$location_result['country_name'] = $ip_data->geoplugin_countryCode;
$location_result['city_name'] = $ip_data->geoplugin_city;
}
return $location_result;
}
print_r(getLocationInfoByIpAddress());
?>
//خروجی
Array ( [country_name] => your_country_name[city_name] => your_city_name)